diff --git a/LameXP_VS2010.vcxproj b/LameXP_VS2010.vcxproj index 064ac66f..39b4c7e8 100644 --- a/LameXP_VS2010.vcxproj +++ b/LameXP_VS2010.vcxproj @@ -399,6 +399,7 @@ del "$(TargetDir)imageformats\q???d4.dll" + @@ -424,6 +425,7 @@ del "$(TargetDir)imageformats\q???d4.dll" + @@ -479,6 +481,7 @@ del "$(TargetDir)imageformats\q???d4.dll" + @@ -519,9 +522,9 @@ del "$(TargetDir)imageformats\q???d4.dll" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" @@ -585,9 +588,9 @@ del "$(TargetDir)imageformats\q???d4.dll" "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" @@ -647,15 +650,15 @@ del "$(TargetDir)imageformats\q???d4.dll" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" @@ -702,6 +705,24 @@ del "$(TargetDir)imageformats\q???d4.dll" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) + + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" + MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" + MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" + MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" + MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" + $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) + $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) + $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) + $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) + $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) + + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" @@ -948,121 +969,103 @@ del "$(TargetDir)imageformats\q???d4.dll" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - - "$(QTDIR5)\qtbase\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) MOC "$(SolutionDir)tmp\MOC_%(Filename).cpp" - "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" - + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\MOC_%(Filename).cpp" "%(FullPath)" $(SolutionDir)tmp\MOC_%(Filename).cpp;%(Outputs) diff --git a/LameXP_VS2010.vcxproj.filters b/LameXP_VS2010.vcxproj.filters index 95378e26..b201fee4 100644 --- a/LameXP_VS2010.vcxproj.filters +++ b/LameXP_VS2010.vcxproj.filters @@ -364,6 +364,15 @@ Generated Files\MOC + + Source Files\Encoders + + + Generated Files\MOC + + + Source Files\Decoders + @@ -489,6 +498,9 @@ Header Files + + Header Files\Decoders + @@ -671,6 +683,9 @@ Header Files\Threads + + Header Files\Encoders + diff --git a/doc/Changelog.html b/doc/Changelog.html index a90031a1..d3189798 100644 --- a/doc/Changelog.html +++ b/doc/Changelog.html @@ -17,8 +17,9 @@ a:visited { color: #0000EE; }

LameXP - Version History


Changes between v4.04 and v4.05 [unreleased]:
    +
  • Added support for Opus Audio Codec, based on Opus-Tools v0.1.3 (2012-07-10) by Xiph.org/Mozilla
  • Added Swedish translation, thanks to Åke Engelbrektson <eson57@gmail.com> -
  • Updated Qt runtime libraries to v4.8.2 (2012-04-26), compiled with MSVC 10.0 +
  • Updated Qt runtime libraries to v4.8.2 (2012-05-22), compiled with MSVC 10.0
  • Updated mpg123 decoder to v1.14.3 (2012-07-01), compiled with GCC 4.6.1
  • Updated MediaInfo to v0.7.58 (2012-05-28), compiled with ICL 12.1.7 and MSVC 10.0
  • Implemented multi-threading in file analyzer for faster file import (about 2.5x to 6.0x faster!) diff --git a/doc/FAQ.html b/doc/FAQ.html index ee0ad54d..f30fb0dd 100644 --- a/doc/FAQ.html +++ b/doc/FAQ.html @@ -123,6 +123,7 @@ Currently the following output formats are supported by LameXP:
    • ATSC A/52 (aka "AC-3"), using the Aften encoder [built-in]
    • DCA, using the DCA Enc encoder (still experimental) [built-in]
    • Free Lossless Audio Codec (FLAC) [built-in] +
    • Opus Audio Codec, using the Opus-Tools by Xiph.org/Mozilla [built-in]
    • Uncompressed PCM / Waveform Audio File (WAV/RIFF)


    @@ -143,6 +144,7 @@ Currently the following input formats are supported by LameXP:
    • MPEG Audio-Layer II (MP2), using mpg123 decoder [built-in]
    • MPEG Audio-Layer III (MP3), using mpg123 decoder [built-in]
    • Musepack +
    • Opus Audio Codec
    • Shorten
    • Speex
    • Sun/NeXT Au diff --git a/etc/Translation/Blank.ts b/etc/Translation/Blank.ts index 71495614..a3268ac4 100644 --- a/etc/Translation/Blank.ts +++ b/etc/Translation/Blank.ts @@ -639,17 +639,17 @@ DecoderRegistry - + All supported types - + Playlists - + All files @@ -760,7 +760,7 @@ - + Source Files @@ -781,13 +781,13 @@ - + Show Details - + Output Directory @@ -833,7 +833,7 @@ - + Meta Data @@ -874,7 +874,7 @@ - + Compression @@ -885,32 +885,32 @@ - Lame MP3 + MP3 - Ogg Vorbis + Ogg/Vorbis - MPEG-4 AAC + AAC/MP4 - Wave (PCM) + PCM/Wave - Aften A/52 + A/52 - DCA Enc + DCA @@ -919,1499 +919,1504 @@ - + + Opus + + + + Rate Control Method - + Quality-based (VBR) - + Average Bitrate (ABR) - + Constant Bitrate (CBR) - + Quality / Bitrate - + Minimum - + Maximum - - + + Advanced Options - + Bitrate Management (LAME and OggEnc2) - + Enable Bitrate Management - + Minimum (kbps): - + Maximum (kbps): - + LAME Algorithm Quality - + Faster Processing - + Better quality - + Warning: Audio quality will be very poor. Please do <u>not</u> complain about audio quality! - + Warning: Processing speed will be very slow. Please do <u>not</u> complain about processing speed! - + Channel Mode / Sampling Rate - - + + Auto Select (Default) - + Joint Stereo - + Forced Joint Stereo - + Simple - + Dual Mono - + Mono - + MP3 Channel Mode: - + Sampling Rate (Hz): - + 16.000 - + 22.050 - + 24.000 - + 32.000 - + 44.100 - + 48.000 - + Enforce Stereo Downmix of Surround (Multi-Channel) Sources - + AAC Encoder-Options - + Enable 2-Pass Processing (ABR Mode) - + Select AAC Profile: - + Auto Select (Recommended) - + Enforce LC-AAC - + Enforce HE-AAC (AAC + SBR) - + Enforce HE-AAC v2 (AAC + SBR + PS) - + Volume Normalization - + Enable Normalization Filter - + Peak Volume (dB): - + None - + Peak Level - + RMS Level - + Equalization Mode: - + Tone Adjustment - + Adjust Treble (dB): - + Adjust Bass (dB): - + Custom Encoder Parameters - - - - - + + + + + You can enter custom parameters here! - + Lame MP3: - + OggEnc2: - + MPEG-4 AAC: - + FLAC: - + Warning: Custom parameters won't be checked at all. Use them at your own risk !!! - + Aften A/52: - + Multi-Threading - + Choose the number of parallel instances based on the number of CPU cores (Recommended) - + Fewer Instances - + More Instances - + Temp Directory - + Browse... - + Store temporary files in your system's default TEMP directory (Recommended) - + Aften A/52 Options - + Film Light - + Film Standard - + Music Light - + Music Standard - + Speech - + None (Default) - + Auto Select - + 1+1 (Ch1,Ch2) - + 1/0 (C) - + 2/0 (L,R) - + 3/0 (L,R,C) - + 2/1 (L,R,S) - + 3/1 (L,R,C,S) - + 2/2 (L,R,SL,SR) - + 3/2 (L,R,C,SL,SR) - + Audio Coding Mode: - + Dynamic Range Compression: - + Fast Bit Allocation (Less Accurate) - + Exponent Search Size: - + Rename Output Files - + Enter the pattern to rename the output files here! - + Rename Output Files - + <a href="reset">Reset</a> &nbsp; <a href="#">Show List of Macros</a> - + Rename Pattern: - + Example File Name: - + Reset Advanced Options - + Encode Now! - - + + About... - + Exit Program - + File - + ? - + View - + Style - + Language - + Tools - + Configuration - + Quit - + Open File(s)... - - + + Visit Official Web-Site - - - - + + + + Check for Updates - + Open Folder... - + Clear All - + Plastique - + Cleanlooks - + Windows Vista ("Aero") - + Windows Classic - + Windows XP ("Luna") - - + + Disable Update Reminder - - + + Disable Sound Effects - + Install WMA Decoder - + Disable Nero AAC Notifications - + Show DropBox - + From File... - + Encode! - + Disable Shell Integration - + Frequently Asked Questions - + Changelog - + Translator's Guide - + Help && Support - + Open Folder Recursively... - + Check for Beta Updates - + Import Cue Sheet - + Disable Slow Startup Notifications - + Hibernate Computer On Shutdown - + Adding file(s), please wait... - - + + Access Denied - + %1 file(s) have been rejected, because read access was not granted! - + This usually means the file is locked by another process. - + CDDA Files - + %1 file(s) have been rejected, because they are dummy CDDA files! - + Sorry, LameXP cannot extract audio tracks from an Audio-CD at present. - + We recommend using %1 for that purpose. - + Cue Sheet - + %1 file(s) have been rejected, because they appear to be Cue Sheet images! - + Please use LameXP's Cue Sheet wizard for importing Cue Sheet files. - + Files Rejected - + %1 file(s) have been rejected, because the file format could not be recognized! - + This usually means the file is damaged or the file format is not supported. - + Scanning folder(s) for files, please wait... - + DEMO VERSION - + You can drop in audio files here! - + Initializing directory outline, please be patient... - + Open File in External Application - + Browse File Location - + Browse Selected Folder - + Refresh Directory Outline - + Bookmark Current Output Folder - + Export Meta Tags to CSV File - + Import Meta Tags from CSV File - + License Declined - + You have declined the license. Consequently the application will exit now! - + Goodbye! - + LameXP - Expired - + This demo (pre-release) version of LameXP has expired at %1. - + LameXP is free software and release versions won't expire. - - + + Exit Program - + It seems that a bogus anti-virus software is slowing down the startup of LameXP. - + Please refer to the %1 document for details and solutions! - + Slow Startup - - - - - + + + + + Discard - - + + Don't Show Again - + Urgent Update - + Your version of LameXP is more than a year old. Time for an update! - - + + Ignore - + Skipping update check this time, please be patient... - - - + + + Update Reminder - + Your last update check was more than 14 days ago. Check for updates now? - + Your did not check for LameXP updates yet. Check for updates now? - + Postpone - + LameXP detected that your version of the Nero AAC encoder is outdated! - + The current version available is %1 (or later), but you still have version %2 installed. - + n/a - + You can download the latest version of the Nero AAC encoder from the Nero website at: - + (Hint: Please ignore the name of the downloaded ZIP file and check the included 'changelog.txt' instead!) - + AAC Encoder Outdated - + The Nero AAC encoder could not be found. AAC encoding support will be disabled. - + Please put 'neroAacEnc.exe', 'neroAacDec.exe' and 'neroAacTag.exe' into the LameXP directory! - + Your LameXP directory is located here: - + You can download the Nero AAC encoder for free from the official Nero website at: - + AAC Support Disabled - - - + + + LameXP - + You must add at least one file to the list before proceeding! - + Not Found - + Your currently selected TEMP folder does not exist anymore: - + Restore Default - + Cancel - + There are less than %1 GB of free diskspace available on your system's TEMP folder. - + It is highly recommend to free up more diskspace before proceeding with the encode! - + Your TEMP folder is located at: - + Low Diskspace Warning - + Abort Encoding Process - + Clean Disk Now - + Low Diskspace - + You are proceeding with low diskspace. Problems might occur! - + Sorry, an unsupported encoder has been chosen! - + Cannot write to the selected output directory. - + Please choose a different directory! - + Load Translation - + Translation Files - + Do you really want to disable the update reminder? - - - - - - - + + + + + + + Yes - - - - - - - + + + + + + + No - + The update reminder has been disabled. - + Please remember to check for updates at regular intervals! - + The update reminder has been re-enabled. - + Do you really want to disable all sound effects? - - + + Sound Effects - + All sound effects have been disabled. - + The sound effects have been re-enabled. - - - + + + Nero AAC Notifications - + Do you really want to disable all Nero AAC Encoder notifications? - + All Nero AAC Encoder notifications have been disabled. - + The Nero AAC Encoder notifications have been re-enabled. - - - + + + Slow Startup Notifications - + Do you really want to disable the slow startup notifications? - + The slow startup notifications have been disabled. - + The slow startup notifications have been re-enabled. - - + + Open Cue Sheet - - + + Cue Sheet File - - - + + + Beta Updates - + Do you really want LameXP to check for Beta (pre-release) updates? - + LameXP will check for Beta (pre-release) updates from now on. - + Check Now - + LameXP will <i>not</i> check for Beta (pre-release) updates from now on. - - - + + + Hibernate Computer - + Do you really want the computer to be hibernated on shutdown? - + LameXP will hibernate the computer on shutdown from now on. - + LameXP will <i>not</i> hibernate the computer on shutdown from now on. - - + + Shell Integration - + Do you really want to disable the LameXP shell integration? - + The LameXP shell integration has been disabled. - + The LameXP shell integration has been re-enabled. - - + + Add file(s) - - + + Add Folder - - + + Save CSV file - - - - + + + + CSV File - + CSV Export - + Sorry, there are no meta tags that can be exported! - + Sorry, failed to open CSV file for writing! - + Sorry, failed to write to the CSV file! - + The CSV files was created successfully! - - + + Open CSV file - + CSV Import - + Sorry, failed to open CSV file for reading! - + Sorry, failed to read from the CSV file! - + Sorry, the CSV file does not contain any known fields! - + CSV file is incomplete. Not all files were updated! - + The CSV files was imported successfully! - - + + New Folder - + Enter the name of the new folder: - + Failed to create folder - + The new folder could not be created: - + Drive is read-only or insufficient access rights! - + QAAC (Apple) - + FHG AAC (Winamp) - + Nero AAC - + Not available! - + Current AAC Encoder: %1 - - - - + + + + Quality Level %1 - - - + + + Compression %1 - - - + + + Uncompressed - + Best Quality (Very Slow) - + High Quality (Recommended) - + Average Quality (Default) - + Low Quality (Fast) - + Poor Quality (Very Fast) - + File name without extension - + Track number with leading zero - + Track title - + Artist name - + Album name - + Year with (at least) four digits - + Comment - + Characters forbidden in file names: - + Rename Macros - + %1 Instance(s) - + Cannot write to the selected directory. Please choose another directory! - + Already Running - + LameXP is already running, please use the running instance! @@ -2867,141 +2872,141 @@ - + Show details for selected job - + Browse Output File Location - + Encoding Files - + Your files are being encoded, please be patient... - + Encoding files, please wait... - + Multi-threading enabled: Running %1 instances in parallel! - + Aborted! Waiting for running jobs to terminate... - + Encoding: %1 files of %2 completed so far, please wait... - + Creating the playlist file, please wait... - + Process was aborted by the user after %1 file(s)! - + Process was aborted prematurely by the user! - + LameXP - Aborted - + Process was aborted by the user. - + Process finished after %1. - + Error: %1 of %2 files failed. Double-click failed items for detailed information! - + LameXP - Error - + At least one file has failed! - + All files completed successfully. - + LameXP - Done - + Playlist creation failed - + The playlist file could not be created: - + Warning: Computer will shutdown in %1 seconds... - - + + Cancel Shutdown - + hour(s) - - + + minute(s) - - + + second(s) - + millisecond(s) diff --git a/etc/Translation/LameXP_DE.ts b/etc/Translation/LameXP_DE.ts index a58ed7bd..5e38dd3c 100644 --- a/etc/Translation/LameXP_DE.ts +++ b/etc/Translation/LameXP_DE.ts @@ -682,18 +682,6 @@ Encoder / Format Kodierer / Format - - Lame MP3 - - - - Ogg Vorbis - - - - Wave (PCM) - - FLAC @@ -1458,10 +1446,6 @@ LameXP will <i>not</i> check for Beta (pre-release) updates from now on. LameXP wird fortan <i>nicht</i> nach Beta (Entwickler) Updates suchen. - - Aften A/52 - - Lame MP3: @@ -1686,10 +1670,6 @@ Bookmark Current Output Folder Lesezeichen für aktuelles Verzeichnis hinzufügen - - MPEG-4 AAC - - AAC Encoder-Options AAC-Kodierer Optionen @@ -1754,10 +1734,6 @@ Skipping update check this time, please be patient... Update-Überprüfung wird übersprungen, bitte warten... - - DCA Enc - - Export Meta Tags to CSV File Metatags als CSV-Datei exportieren @@ -1858,6 +1834,34 @@ Refresh Directory Outline Verzeichnisbaum aktualisieren + + MP3 + + + + Ogg/Vorbis + + + + AAC/MP4 + + + + PCM/Wave + + + + A/52 + + + + DCA + + + + Opus + + MetaInfo diff --git a/etc/Translation/LameXP_ES.ts b/etc/Translation/LameXP_ES.ts index d04feb54..c20db787 100644 --- a/etc/Translation/LameXP_ES.ts +++ b/etc/Translation/LameXP_ES.ts @@ -681,18 +681,6 @@ Encoder / Format Codificador / Formato - - Lame MP3 - Lame MP3 - - - Ogg Vorbis - Ogg Vorbis - - - Wave (PCM) - Wav (PCM) - FLAC FLAC @@ -1457,10 +1445,6 @@ LameXP will <i>not</i> check for Beta (pre-release) updates from now on. LameXP <i>no</i>comprobará en busca de versiones Beta (pre-release). - - Aften A/52 - Aften A/52 - Lame MP3: Lame MP3: @@ -1685,10 +1669,6 @@ Bookmark Current Output Folder Marcar la carpeta de salida actual - - MPEG-4 AAC - MPEG-4 AAC - AAC Encoder-Options Opciones AAC @@ -1753,10 +1733,6 @@ Skipping update check this time, please be patient... Saltando la comprobación de actualizaciones, por favor espere... - - DCA Enc - DCA Enc - Export Meta Tags to CSV File Exportar Meta-Etiquetas a un archivo CSV @@ -1857,6 +1833,34 @@ Refresh Directory Outline Actualizar esquema de directorios + + MP3 + + + + Ogg/Vorbis + + + + AAC/MP4 + + + + PCM/Wave + + + + A/52 + + + + DCA + + + + Opus + + MetaInfo diff --git a/etc/Translation/LameXP_FR.ts b/etc/Translation/LameXP_FR.ts index ee231496..4f15ce83 100644 --- a/etc/Translation/LameXP_FR.ts +++ b/etc/Translation/LameXP_FR.ts @@ -686,18 +686,6 @@ Encoder / Format Encodeur/Format - - Lame MP3 - Lame MP3 - - - Ogg Vorbis - Ogg Vorbis - - - Wave (PCM) - Wave (PCM) - FLAC FLAC @@ -1467,10 +1455,6 @@ Ouvrir le dossier récursivement... LameXP will <i>not</i> check for Beta (pre-release) updates from now on. Désormais LameXP ne vérifiera <i>pas</i> les mises à jour Beta. - - Aften A/52 - Aften A/52 - Lame MP3: Lame MP3 : @@ -1695,10 +1679,6 @@ Ouvrir le dossier récursivement... Bookmark Current Output Folder - - MPEG-4 AAC - - AAC Encoder-Options @@ -1763,10 +1743,6 @@ Ouvrir le dossier récursivement... Skipping update check this time, please be patient... - - DCA Enc - - Export Meta Tags to CSV File @@ -1867,6 +1843,34 @@ Ouvrir le dossier récursivement... Refresh Directory Outline + + MP3 + + + + Ogg/Vorbis + + + + AAC/MP4 + + + + PCM/Wave + + + + A/52 + + + + DCA + + + + Opus + + MetaInfo diff --git a/etc/Translation/LameXP_IT.ts b/etc/Translation/LameXP_IT.ts index 78145833..47410007 100644 --- a/etc/Translation/LameXP_IT.ts +++ b/etc/Translation/LameXP_IT.ts @@ -682,18 +682,6 @@ Encoder / Format Encoder / Formato - - Lame MP3 - Lame MP3 - - - Ogg Vorbis - Ogg Vorbis - - - Wave (PCM) - Wave (PCM) - FLAC FLAC @@ -1458,10 +1446,6 @@ LameXP will <i>not</i> check for Beta (pre-release) updates from now on. - - Aften A/52 - - Lame MP3: Lame MP3: @@ -1686,10 +1670,6 @@ Bookmark Current Output Folder - - MPEG-4 AAC - - AAC Encoder-Options @@ -1754,10 +1734,6 @@ Skipping update check this time, please be patient... - - DCA Enc - - Export Meta Tags to CSV File @@ -1858,6 +1834,34 @@ Refresh Directory Outline + + MP3 + + + + Ogg/Vorbis + + + + AAC/MP4 + + + + PCM/Wave + + + + A/52 + + + + DCA + + + + Opus + + MetaInfo diff --git a/etc/Translation/LameXP_KR.ts b/etc/Translation/LameXP_KR.ts index 8622a9f8..64656d9a 100644 --- a/etc/Translation/LameXP_KR.ts +++ b/etc/Translation/LameXP_KR.ts @@ -681,18 +681,6 @@ Encoder / Format 인코더 / 형식 - - Lame MP3 - Lame MP3 - - - Ogg Vorbis - Ogg Vorbis - - - Wave (PCM) - Wave (PCM) - FLAC FLAC @@ -1457,10 +1445,6 @@ LameXP will <i>not</i> check for Beta (pre-release) updates from now on. 지금부터 LameXP가 베타 버전(pre-release) 업데이트를 <i>확인하지 않습니다</i>. - - Aften A/52 - Aften A/52 - Lame MP3: Lame MP3: @@ -1685,10 +1669,6 @@ Bookmark Current Output Folder 현재 출력 폴더 북마트 - - MPEG-4 AAC - MPEG-4 AAC - AAC Encoder-Options AAC Encoder-옵션 @@ -1753,10 +1733,6 @@ Skipping update check this time, please be patient... 이 번에 업데이트 확인 건너뛰는 중, 잠시만 기다려 주십시오... - - DCA Enc - DCA Enc - Export Meta Tags to CSV File CSV 파일로 메타 태그 내보내기 @@ -1857,6 +1833,34 @@ Refresh Directory Outline 디렉토리 목록 새로 고침 + + MP3 + + + + Ogg/Vorbis + + + + AAC/MP4 + + + + PCM/Wave + + + + A/52 + + + + DCA + + + + Opus + + MetaInfo diff --git a/etc/Translation/LameXP_PL.ts b/etc/Translation/LameXP_PL.ts index 9126e006..04d43407 100644 --- a/etc/Translation/LameXP_PL.ts +++ b/etc/Translation/LameXP_PL.ts @@ -639,17 +639,17 @@ DecoderRegistry - + All supported types Wszystkie obsługiwane pliki - + Playlists Playlisty - + All files Wszystkie pliki @@ -760,7 +760,7 @@ - + Source Files Pliki źródłowe @@ -781,13 +781,13 @@ - + Show Details Pokaż szczegóły - + Output Directory Folder docelowy @@ -823,7 +823,7 @@ - + Meta Data Tagi @@ -864,7 +864,7 @@ - + Compression Kompresja @@ -873,270 +873,240 @@ Encoder / Format Koder/Format - - - Lame MP3 - Lame MP3 - - - - Ogg Vorbis - Ogg Vorbis - - - - MPEG-4 AAC - MPEG-4 AAC - - - - Wave (PCM) - Wave (PCM) - FLAC FLAC - - Aften A/52 - Aften A/52 - - - - DCA Enc - Enkoder DCA - - - + Rate Control Method Tryby przepływności bitów - + Quality-based (VBR) Jakość - Zmienny bitrate (VBR) - + Average Bitrate (ABR) Średni bitrate (ABR) - + Constant Bitrate (CBR) Stały bitrate (CBR) - + Quality / Bitrate Jakość/Bitrate - + Minimum Minimalny - + Maximum Maksymalny - - + + Advanced Options Opcje zaawansowane - + Bitrate Management (LAME and OggEnc2) Zarządzanie bitami (LAME i OggEnc2) - + Enable Bitrate Management Włącz zarządzanie bitami - + Minimum (kbps): Minimalny (kbps): - + Maximum (kbps): Maksymalny (kbps): - + LAME Algorithm Quality Jakość algorytmu LAME - + Faster Processing Szybsza kompresja - + Better quality Lepsza jakość - + Warning: Audio quality will be very poor. Please do <u>not</u> complain about audio quality! Ostrzeżnie: Jakość dźwięku będzie bardzo niska. Prosze <b>nie<b> kierować skarg do autora programu! - + Warning: Processing speed will be very slow. Please do <u>not</u> complain about processing speed! Ostrzeżenie: Kompresja może trwać bardzo długo. Prosze <b>nie<b> kierować skarg do autora programu! - + Channel Mode / Sampling Rate Tryb kanałów/Częstotliwość próbkowania - - + + Auto Select (Default) Automatycznie (Domyślnie) - + Joint Stereo Joint Stereo - + Forced Joint Stereo Wymuś Joint Stereo - + Simple Simple - + Dual Mono Dual Mono - + Mono Mono - + MP3 Channel Mode: Tryb kanałów MP3: - + Sampling Rate (Hz): Próbkowanie (Hz): - + 16.000 16.000 - + 22.050 22.050 - + 24.000 24.000 - + 32.000 32.000 - + 44.100 44.100 - + 48.000 48.000 - + Enforce Stereo Downmix of Surround (Multi-Channel) Sources Wymuś miksowanie plików wielokanałowych do stereo - + AAC Encoder-Options Opcje kodera AAC - + Enable 2-Pass Processing (ABR Mode) Włącz kompresję dwuprzebiegową (w trybie ABR) - + Select AAC Profile: Wybierz profil AAC: - + Auto Select (Recommended) Automatyczny (Zalecane) - + Enforce LC-AAC Wymuś LC-AAC - + Enforce HE-AAC (AAC + SBR) Wymuś HE-AAC (AAC + SBR) - + Enforce HE-AAC v2 (AAC + SBR + PS) Wymuś HE-AAC v2 (AAC + SBR + PS) - + Volume Normalization Normalizacja dźwięku - + Enable Normalization Filter Włącz filtr normalizacji - + Peak Volume (dB): Najwyższa głośność (dB): - + Peak Level - + RMS Level - + None Żaden @@ -1151,1267 +1121,1302 @@ Pokaż ulubione - + + MP3 + + + + + Ogg/Vorbis + + + + + AAC/MP4 + + + + + PCM/Wave + + + + + A/52 + + + + + DCA + + + + + Opus + + + + Equalization Mode: Tryb korekcji: - + Tone Adjustment Zmiana tonów - + Adjust Treble (dB): Zmień tony wysokie (dB): - + Adjust Bass (dB): Zmień tony niskie (dB): - + Custom Encoder Parameters Własne parametry kodowania - - - - - + + + + + You can enter custom parameters here! Tutaj możesz wpisać własne parametry kodowania! - + Lame MP3: Lame MP3: - + OggEnc2: OggEnc2: - + MPEG-4 AAC: MPEG-4 AAC: - + FLAC: FLAC: - + Warning: Custom parameters won't be checked at all. Use them at your own risk !!! Ostrzeżenie: Włąśne parametry kompresji nie będą weryfikowane. Używasz je na własne ryzyko!!! - + Aften A/52: Aften A/52: - + Multi-Threading Wielowątkowość - + Choose the number of parallel instances based on the number of CPU cores (Recommended) Wybierz ilość równoległych kodowań na podstawie ilości wątków procesora (Zalecane) - + Fewer Instances Mniej - + More Instances Więcej - + Temp Directory Folder tymczasowy - + Browse... Wybierz... - + Store temporary files in your system's default TEMP directory (Recommended) Zapisuj pliki tymczasowe w systemowej lokalizacji TEMP (Zalecane) - + Aften A/52 Options Opcje A/52 - + Film Light - + Film Standard - + Music Light - + Music Standard - + Speech - + None (Default) Żadna (Domyślnie) - + Auto Select Automatycznie - + 1+1 (Ch1,Ch2) 1+1 (Ch1,Ch2) - + 1/0 (C) 1/0 (C) - + 2/0 (L,R) 2/0 (L,R) - + 3/0 (L,R,C) 3/0 (L,R,C) - + 2/1 (L,R,S) 2/1 (L,R,S) - + 3/1 (L,R,C,S) 3/1 (L,R,C,S) - + 2/2 (L,R,SL,SR) 2/2 (L,R,SL,SR) - + 3/2 (L,R,C,SL,SR) 3/2 (L,R,C,SL,SR) - + Audio Coding Mode: Ilość kanałów: - + Dynamic Range Compression: Kompresja dynamiki (DRC): - + Fast Bit Allocation (Less Accurate) Szybka alokacja bitów (Mniejsza dokładność) - + Exponent Search Size: - + Rename Output Files Zmiana nazwy plików wyjściowych - + Enter the pattern to rename the output files here! Zapisz tutaj wzór wg którego zmienisz nazwy! - + Rename Output Files Zmieniaj nazwy plików - + <a href="reset">Reset</a> &nbsp; <a href="#">Show List of Macros</a> <a href="reset">Resetuj</a> &nbsp; <a href="#">Pokaż listę makr</a> - + Rename Pattern: Format wyjściowy: - + Example File Name: Przykładowa nazwa pliku: - + Reset Advanced Options Resetuj opcje zaawansowane - + Encode Now! Kompresuj! - - + + About... Info... - + Exit Program Wyjdź z programu - + File Plik - + ? ? - + View Widok - + Style Styl - + Language Język - + Tools Narzędzia - + Configuration Konfiguracja - + Quit Zamknij - + Open File(s)... Otwórz plik(i)... - - + + Visit Official Web-Site Odwiedź oficjalną stronę - - - - + + + + Check for Updates Sprawdź aktualizacje - + Open Folder... Otwórz folder... - + Clear All Wyczyść wszystko - + Plastique Plastique - + Cleanlooks Cleanlooks - + Windows Vista ("Aero") Windows Vista ("Aero") - + Windows Classic Windows Classic - + Windows XP ("Luna") Windows XP ("Luna") - - + + Disable Update Reminder Wyłącz przypominanie o aktualizacji - - + + Disable Sound Effects Wyłącz efekty dźwiękowe - + Install WMA Decoder Zainstaluj Dekoder WMA - + Disable Nero AAC Notifications Wyłącz powiadomienia Nero AAC - + Show DropBox Pokaż DropBoxa - + From File... Z pliku... - + Encode! Kompresuj! - + Disable Shell Integration Wyłącz integrację z systemem - + Frequently Asked Questions Pytania i Odpowiedzi - + Changelog Lista zmian - + Translator's Guide Przewodnik tłumacza - + Help && Support Pomoc i Wsparcie - + Open Folder Recursively... Otwórz folder rekurencyjnie... - + Check for Beta Updates Sprawdzaj czy jest Beta - + Import Cue Sheet Importuj plik Cue - + Disable Slow Startup Notifications Wyłącz powiadomienia o powolnym starcie - + Hibernate Computer On Shutdown Hibernuj zamiast zamykać - + Adding file(s), please wait... Dodawanie plików, prosze czekać... - - + + Access Denied Dostęp zablokowany - + %1 file(s) have been rejected, because read access was not granted! %1 plik(ów) zostało odrzuconych z powodu braku dostępu do pliku! - + This usually means the file is locked by another process. To przeważnie oznacza, że plik jest zablokowany przez inny proces. - + CDDA Files Pliki CDDA - + %1 file(s) have been rejected, because they are dummy CDDA files! %1 plik(ów) zostało odrzuconych ponieważ to nie są właściwe pliki CDDA! - + Sorry, LameXP cannot extract audio tracks from an Audio-CD at present. LameXP nie może teraz wyekstrachować ścieżki z płyty Audio-CD. - + We recommend using %1 for that purpose. Zaleca się użycie w tym celu %1. - + Cue Sheet Cue Sheet - + %1 file(s) have been rejected, because they appear to be Cue Sheet images! %1 plik(ów) zostało odrzuconych, ponieważ to nie są pliki obrazów Cue Sheet! - + Please use LameXP's Cue Sheet wizard for importing Cue Sheet files. Prosze użyć przewodnika Cue Sheet w LameXP w celu importowania tych plików. - + Files Rejected Pliki odrzucone - + %1 file(s) have been rejected, because the file format could not be recognized! %1 plik(ów) zostało odrzuconych, ponieważ ich format nie został rozpoznany! - + This usually means the file is damaged or the file format is not supported. To przeważnie oznacza że plik jest uszkodzony lub format pliku nie jest wspierany. - + Scanning folder(s) for files, please wait... Skanowanie folderu/ów, prosze czekać... - + You can drop in audio files here! Tutaj możesz upuścić pliki dźwiękowe! - + Open File in External Application Otwórz plik w zewnętrznym programie - + Browse File Location Otwórz lokalizację pliku - + Browse Selected Folder Otwórz wybrany folder - + Bookmark Current Output Folder Zapamiętaj wybrany folder - + License Declined Licencja odrzucona - + You have declined the license. Consequently the application will exit now! Odrzuciłeś licencję. W takim razie program zostanie teraz zamknięty! - + Goodbye! Naraska! - + LameXP - Expired LameXP - Termin wygasł - + This demo (pre-release) version of LameXP has expired at %1. Ta wersja demo (beta) LameXP wygasła %1. - + LameXP is free software and release versions won't expire. LameXP jest darmowym oprogramowaniem i pełna wersja nie wygasa. - - + + Exit Program Wyjdź z programu - + It seems that a bogus anti-virus software is slowing down the startup of LameXP. Najwyraźniej twoje oprogramowanie antywirusowe spowalnia uruchamianie się LameXP. - + Please refer to the %1 document for details and solutions! Prosze sprawdzić dokument %1 w celu dalszych szcegółów i rozwiązań! - + Slow Startup Powolny start - - - - - + + + + + Discard Zamknij - - + + Don't Show Again Nie pokazuj ponownie - + Urgent Update Ważna aktualizacja - + Your version of LameXP is more than a year old. Time for an update! Twoja wersja LameXP jest starsza niż rok! Czas na aktualizację! - - - + + + Update Reminder Powiadomienie aktualizacji - + Your last update check was more than 14 days ago. Check for updates now? Ostatnie sprawdzenie aktualizacji było ponad 14 dni temu. Sprawdzić teraz aktualizacje? - + Your did not check for LameXP updates yet. Check for updates now? Nie sprawdzałeś jeszcze aktualizacji LameXP. Sprawdzić teraz aktualizacje? - + Postpone Przełóż - + LameXP detected that your version of the Nero AAC encoder is outdated! LameXP wykrył że Twoja wersja kodera Nero AAC jest nieaktualna! - + The current version available is %1 (or later), but you still have version %2 installed. Wersją dostępną obecnie jest %1, Twoja wersja to %2. - + n/a n/d - + You can download the latest version of the Nero AAC encoder from the Nero website at: Możesz pobrać najnowszą wersję kodera Nero AAC ze strony Nero: - + AAC Encoder Outdated Koder AAC jest nieaktualny - + The Nero AAC encoder could not be found. AAC encoding support will be disabled. Nie można odnaleźć kodera Nero AAC. Kompresja formatu AAC zostanie wyłączona. - + Please put 'neroAacEnc.exe', 'neroAacDec.exe' and 'neroAacTag.exe' into the LameXP directory! Prosze skopiować 'neroAacEnc.exe', 'neroAacDec.exe', oraz 'neroAacTag.exe' do folderu LameXP! - + Your LameXP directory is located here: Folder aplikacji LameXP znajduje się tutaj: - + You can download the Nero AAC encoder for free from the official Nero website at: Możesz pobrać koder Nero AAC za darmo z oficjalnej strony Nero: - + AAC Support Disabled Wsparcie dla AAC wyłączone - - - + + + LameXP LameXP - + You must add at least one file to the list before proceeding! Powinienieś dodać przynajmniej jeden plik do listy aby zacząć działać! - + Not Found Nie znaleziono - + Your currently selected TEMP folder does not exist anymore: Wybrany przez Ciebie folder tymczasowy TEMP już nie istnieje: - + Restore Default Przywróć domyślne - + Cancel Anuluj - + Low Diskspace Warning Ostrzeżenie o małej ilości miejsca na dysku - + There are less than %1 GB of free diskspace available on your system's TEMP folder. Jest mniej niż %1 GB dostępnego miejsca w systemowym folderze TEMP. - + DEMO VERSION WERSJA DEMO - + (Hint: Please ignore the name of the downloaded ZIP file and check the included 'changelog.txt' instead!) (Podpowiedź: Zignoruj nazwę pobranego pliku ZIP, w zamian sprawdż załączony w archiwum plik "changelog.txt"!) - + It is highly recommend to free up more diskspace before proceeding with the encode! Jest wysoce zalecane zwolnić miejsce na dysku zanim zaczniesz kompresję! - + Your TEMP folder is located at: Twój folder TEMP znajduję się: - + Abort Encoding Process Przerwij proces kompresji - + Clean Disk Now Wykonaj oczyszczanie dysku - - + + Ignore Ignoruj - + Initializing directory outline, please be patient... Ładowanie zestawu folderów, prosze czekać... - + Refresh Directory Outline Odśwież foldery - + Export Meta Tags to CSV File Eksportuj Tagi do pliku CVS - + Import Meta Tags from CSV File Importuj Tagi do pliku CVS - + Skipping update check this time, please be patient... Pomijanie sprawdzania aktualizacji, prosze czekać... - + Low Diskspace Mało miejsca na dysku - + You are proceeding with low diskspace. Problems might occur! Chcesz zacząć działać z małą ilością miejsca na dysku. Mogą wystąpić problemy! - + Sorry, an unsupported encoder has been chosen! Został wybrany koder, który nie jest wspierany! - + Cannot write to the selected output directory. Nie można zapisać do wybranej lokalizacji. - + Please choose a different directory! Prosze wybrać inną lokalizację! - + Load Translation Zaladuj plik językowy - + Translation Files Pliki językowe - + Do you really want to disable the update reminder? Czy na pewno chcesz wyłączyć przypominanie o aktualizacjach? - - - - - - - + + + + + + + Yes Tak - - - - - - - + + + + + + + No Nie - + The update reminder has been disabled. Przypominanie o aktualizacjach wyłączone. - + Please remember to check for updates at regular intervals! Prosze pamiętać o okresowym sprawdzaniu aktualizacji! - + The update reminder has been re-enabled. Przypominanie o aktualizacjach ponownie włączone. - + Do you really want to disable all sound effects? Czy na pewno chcesz wyłączyć wszystkie dźwiękowe? - - + + Sound Effects Efekty dźwiękowe - + All sound effects have been disabled. Wszystkie efekty dźwiękowe zostały wyłączone. - + The sound effects have been re-enabled. Efekty dźwiękowe zostały ponownie włączone. - - - + + + Nero AAC Notifications Powiadomienia Nero AAC - + Do you really want to disable all Nero AAC Encoder notifications? Czy na pewno chcesz wyłączyć wszystkie powiadomienia Nero AAC? - + All Nero AAC Encoder notifications have been disabled. Wszystkie powiadomienia kodera Nero AAC zostały wyłączone. - + The Nero AAC Encoder notifications have been re-enabled. Powiadomienia Nero AAC zostały ponownie włączone. - - - + + + Slow Startup Notifications Powiadomienia o powolnym starcie - + Do you really want to disable the slow startup notifications? Czy na pewno chcesz wyłączyć powiadomienia o powolnym starcie? - + The slow startup notifications have been disabled. Powiadomienia o powolnym starcie zostały wyłączone. - + The slow startup notifications have been re-enabled. Powiadomienia o powolnym starcie zostały ponownie włączone. - - + + Open Cue Sheet Otwórz plik Cue Sheet - - + + Cue Sheet File Plik Cue Sheet - - - + + + Beta Updates Aktualizacje Beta - + Do you really want LameXP to check for Beta (pre-release) updates? Czy na pewno chcesz aby LameXP sprawdzał aktualizacje Beta? - + LameXP will check for Beta (pre-release) updates from now on. Od teraz LameXP będzie sprawdzał aktualizacje Beta. - + Check Now Sprawdź teraz - + LameXP will <i>not</i> check for Beta (pre-release) updates from now on. LameXP od teraz <i>nie będzie</i> sprawdzał aktualizacji Beta. - - - + + + Hibernate Computer Hibernuj komputer - + Do you really want the computer to be hibernated on shutdown? Czy na pewno chcesz aby komputer był hibernowany zamiast zamykany? - + LameXP will hibernate the computer on shutdown from now on. Od teraz LameXP będzie hibernował komputer zamiast zamykać. - + LameXP will <i>not</i> hibernate the computer on shutdown from now on. LameXP od teraz <i>nie</i> będzie hibernował komputera tylko zamykał. - - + + Shell Integration Integracja z systemem - + Do you really want to disable the LameXP shell integration? Czy na pewno chcesz wyłączyć integrację LameXP z systemem? - + The LameXP shell integration has been disabled. Integracja LameXP z systemem zostałą wyłączona. - + The LameXP shell integration has been re-enabled. Integracja LameXP z systemem została ponownie włączona. - - + + Add file(s) Dodaj plik(i) - - + + Add Folder Dodaj folder - - + + Save CSV file Zapisz plik CSV - - - - + + + + CSV File Plik CSV - + CSV Export Eksportowanie CSV - + Sorry, there are no meta tags that can be exported! Nie ma żadnych tagów, które można eksportować! - + Sorry, failed to open CSV file for writing! Nie można otworzyć pliku CSV aby go zapisać! - + Sorry, failed to write to the CSV file! Nie można zapisać do pliku CSV! - + The CSV files was created successfully! Pliki CSV utworzone pomyślnie! - - + + Open CSV file Otwórz plik CSV - + Sorry, failed to open CSV file for reading! Nie można otworzyć pliku CSV aby go wczytać! - + CSV Import Importowanie CSV - + Sorry, failed to read from the CSV file! Próba odczytania pliku CSV zakończona niepowodzeniem! - + Sorry, the CSV file does not contain any known fields! Plik CSV nie zawiera żadnych znanych pól! - + CSV file is incomplete. Not all files were updated! Plik CSV nie jest kompletny. Nie wszystkie pliki zostały zaktualizowane! - + The CSV files was imported successfully! Pliki CSV zaimportowano pomyślnie! - - + + New Folder Nowy folder - + Enter the name of the new folder: Wprowadź nazwę nowego folderu: - + Failed to create folder Utworzenie folderu zakończone niepowodzeniem - + The new folder could not be created: Nowy folder nie mógł zostać stworzony: - + Drive is read-only or insufficient access rights! Dysk tylko do odczytu lub brak praw dostępu! - + QAAC (Apple) QAAC (Apple) - + FHG AAC (Winamp) FHG AAC (Winamp) - + Nero AAC Nero AAC - + Not available! Niedostępny! - + Current AAC Encoder: %1 Obecny koder AAC: %1 - - - - + + + + Quality Level %1 Poziom jakości %1 - - - + + + Compression %1 Kompresja %1 - - - + + + Uncompressed Nieskompresowany - + Best Quality (Very Slow) Najlepsza jakość (Bardzo wolno) - + High Quality (Recommended) Wysoka jakość (Zalecane) - + Average Quality (Default) Średnia jakość (Domyślnie) - + Low Quality (Fast) Niska jakość (Szybko) - + Poor Quality (Very Fast) Najniższa jakość (Bardzo szybko) - + File name without extension Nazwa pliku bez rozszerzenia - + Track number with leading zero Numer ścieżki z zerem na początku - + Track title Nazwa ścieżki - + Artist name Nazwa Artysty - + Album name Nazwa Albumu - + Year with (at least) four digits Rok z (przynajmniej) czterema cyframi - + Comment Komentarz - + Characters forbidden in file names: Zabronione znaki w nazwach plików: - + Rename Macros Zmień nazwy makr - + %1 Instance(s) %1 wątek/ki - + Cannot write to the selected directory. Please choose another directory! Nie można zapisać do wybranej lokalizacji. Prosze wybierz inną lokalizację! - + Already Running Już działa - + LameXP is already running, please use the running instance! LameXP już działa, przejdź do działającego programu! @@ -2867,141 +2872,141 @@ Powrót - + Show details for selected job Pokaż szczegóły wybranego zadania - + Browse Output File Location Wybierz lokalizację dla plików wyjściowych - + Encoding Files Kompresowanie plików - + Your files are being encoded, please be patient... Twoje pliki są właśnie kompresowane, prosze być cierpliwy... - + Encoding files, please wait... Kompresowanie plików, prosze czekać... - + Multi-threading enabled: Running %1 instances in parallel! Wielowątkowosć włączona: Równolegle wykonywanych jest %1 kodowań! - + Aborted! Waiting for running jobs to terminate... Przerwano! Czekanie na wyłączenie procesu... - + Encoding: %1 files of %2 completed so far, please wait... Kompresja: Prosze czekać, jak dotąd wykonano %1 z %2 plików... - + Creating the playlist file, please wait... Tworzenie pliku playlisty, prosze czekać... - + Process was aborted by the user after %1 file(s)! Proces został przerwany przez użytkownika po wykonaniu %1 plików! - + Process was aborted prematurely by the user! Proces został przedwcześnie zakończony przez użytkownika! - + LameXP - Aborted LameXP - Przerwano - + Process was aborted by the user. Proces został przerwany przez użytkownika. - + Process finished after %1. Proces został zakończony po %1. - + Error: %1 of %2 files failed. Double-click failed items for detailed information! Błąd: %1 z %2 plików nie zostało skompresowanych. Kliknij dwukrotnie na plik aby zobaczyć szczegóły! - + LameXP - Error LameXP - Błąd - + At least one file has failed! Przynajmniej jeden plik nie został skompresowany! - + All files completed successfully. Kompresja wszystkich plików zakończona powodzeniem. - + LameXP - Done LameXP - Zrobione - + Playlist creation failed Tworzenie playlisty zakończone niepowodzeniem - + The playlist file could not be created: Playlista nie mogła zostać utworzona: - + Warning: Computer will shutdown in %1 seconds... Ostrzeżenie: Komputer zostanie zamknięty za %1 sekund/y... - - + + Cancel Shutdown Anuluj wyłączenie komputera - + hour(s) godzinie/ach - - + + minute(s) minutach - - + + second(s) sekundach - + millisecond(s) milisekundach diff --git a/etc/Translation/LameXP_RU.ts b/etc/Translation/LameXP_RU.ts index 30b86854..35b0113e 100644 --- a/etc/Translation/LameXP_RU.ts +++ b/etc/Translation/LameXP_RU.ts @@ -684,18 +684,6 @@ Encoder / Format Кодер / Формат - - Lame MP3 - - - - Ogg Vorbis - - - - Wave (PCM) - - FLAC @@ -1462,10 +1450,6 @@ LameXP will <i>not</i> check for Beta (pre-release) updates from now on. LameXP не бует <i>проверять</i> наличие БЕТА (пред-релизных) обновлений. - - Aften A/52 - - Lame MP3: @@ -1691,10 +1675,6 @@ Bookmark Current Output Folder Запомнить текущую выходную папку - - MPEG-4 AAC - - AAC Encoder-Options Параметры кодера AAC @@ -1759,10 +1739,6 @@ Skipping update check this time, please be patient... Пропуск проверки обновлений, пожалуйста подождите... - - DCA Enc - - Export Meta Tags to CSV File Экспорт Meta-тегов в файл CSV @@ -1863,6 +1839,34 @@ Refresh Directory Outline Обновить + + MP3 + + + + Ogg/Vorbis + + + + AAC/MP4 + + + + PCM/Wave + + + + A/52 + + + + DCA + + + + Opus + + MetaInfo diff --git a/etc/Translation/LameXP_SV.ts b/etc/Translation/LameXP_SV.ts index 187dfae7..8e76da0d 100644 --- a/etc/Translation/LameXP_SV.ts +++ b/etc/Translation/LameXP_SV.ts @@ -639,17 +639,17 @@ DecoderRegistry - + All supported types Alla typer som stöds - + Playlists Spelningslistor - + All files Alla filer @@ -760,7 +760,7 @@ - + Source Files Källfiler @@ -781,13 +781,13 @@ - + Show Details Visa detaljer - + Output Directory Målmapp @@ -833,7 +833,7 @@ - + Meta Data Metadata @@ -874,7 +874,7 @@ - + Compression Komprimering @@ -885,33 +885,33 @@ - Lame MP3 - Lame MP3 + MP3 + - Ogg Vorbis - Ogg Vorbis + Ogg/Vorbis + - MPEG-4 AAC - MPEG-4 AAC + AAC/MP4 + - Wave (PCM) - Wave (PCM) + PCM/Wave + - Aften A/52 - Aften A/52 + A/52 + - DCA Enc - DCA Enc + DCA + @@ -919,1499 +919,1504 @@ FLAC - + + Opus + + + + Rate Control Method Bithastighet - + Quality-based (VBR) Kvallitetsbaserad bithastighet (VBR) - + Average Bitrate (ABR) Genomsnittlig bithastighet (ABR) - + Constant Bitrate (CBR) Konstant bithastighet - + Quality / Bitrate Kvallitet / Bithastighet - + Minimum Minimum - + Maximum Maximum - - + + Advanced Options Avancerat - + Bitrate Management (LAME and OggEnc2) Bithastighetshantering (LAME och OggEnc2) - + Enable Bitrate Management Aktivera bithastighetshantering - + Minimum (kbps): Minimum (kbps): - + Maximum (kbps): Maximum (kbps): - + LAME Algorithm Quality Lame algoritm-kvallitet - + Faster Processing Snabbare bearbetning - + Better quality Bättre kvallitet - + Warning: Audio quality will be very poor. Please do <u>not</u> complain about audio quality! Varning! Ljudkvalliteten kommer att bli mycket dålig. Klagomål angående ljudkvallitet <u>undanbedes</u>! - + Warning: Processing speed will be very slow. Please do <u>not</u> complain about processing speed! Varning! Bearbetningen kommer att gå väldigt långsamt. Klagomål angående bearbetningshastigheten <u>undanbedes</u>! - + Channel Mode / Sampling Rate Kanalläge / Samplingsfrekvens - - + + Auto Select (Default) Automatiskt (Standard) - + Joint Stereo Joint Stereo - + Forced Joint Stereo Framtvingad Joint Stereo - + Simple Enkel - + Dual Mono Dual Mono - + Mono Mono - + MP3 Channel Mode: MP3-kanalläge: - + Sampling Rate (Hz): Samplingsfrekvens (Hz): - + 16.000 16.000 - + 22.050 22.050 - + 24.000 24.000 - + 32.000 32.000 - + 44.100 44.100 - + 48.000 48.000 - + Enforce Stereo Downmix of Surround (Multi-Channel) Sources Framtvinga stereo-nedmixning av surround-källor (multikanal) - + AAC Encoder-Options AAC-alternativ - + Enable 2-Pass Processing (ABR Mode) Aktivera bearbetning i 2-pass (ABR-läge) - + Select AAC Profile: AAC-profil: - + Auto Select (Recommended) Automatiskt (rekommenderas) - + Enforce LC-AAC Framtvinga LC-AAC - + Enforce HE-AAC (AAC + SBR) Framtvinga HE-AAC (AAC + SBR) - + Enforce HE-AAC v2 (AAC + SBR + PS) Framtvinga HE-AAC v2 (AAC + SBR + PS) - + Volume Normalization Volymnormalisering - + Enable Normalization Filter Aktivera volymnormalisering - + Peak Volume (dB): Toppvolym (dB): - + None Ingen - + Peak Level Toppnivå - + RMS Level RMS-nivå - + Equalization Mode: Utjämningsläge: - + Tone Adjustment Tonjustering - + Adjust Treble (dB): Diskant (dB): - + Adjust Bass (dB): Bas (dB): - + Custom Encoder Parameters Anpassade kodningsparametrar - - - - - + + + + + You can enter custom parameters here! Du kan ange anpassade parametrar här! - + Lame MP3: Lame MP3: - + OggEnc2: OggEnc2: - + MPEG-4 AAC: MPEG-4 AAC: - + FLAC: FLAC: - + Warning: Custom parameters won't be checked at all. Use them at your own risk !!! Varning! Anpassade parametrar kommer inte att kontrolleras. Använd dem på eget ansvar! - + Aften A/52: Aften A/52: - + Multi-Threading Flertrådskörning - + Choose the number of parallel instances based on the number of CPU cores (Recommended) Välj antal parallella instanser baserat på antal processorkärnor (rekommenderas) - + Fewer Instances Färre instanser - + More Instances Fler instanser - + Temp Directory Temporär destination - + Browse... Bläddra... - + Store temporary files in your system's default TEMP directory (Recommended) Lagra temporära filer i systemets standardmapp (rekommenderas) - + Aften A/52 Options Aften A/52-alternativ - + Film Light Film lätt - + Film Standard Film standard - + Music Light Musik lätt - + Music Standard Musik standard - + Speech Tal - + None (Default) Ingen (standard) - + Auto Select Automatiskt - + 1+1 (Ch1,Ch2) 1+1 (Ch1,Ch2) - + 1/0 (C) 1/0 (C) - + 2/0 (L,R) 2/0 (V,H) - + 3/0 (L,R,C) 3/0 (V,H,C) - + 2/1 (L,R,S) 2/1 (V,H,S) - + 3/1 (L,R,C,S) 3/1 (V,H,C,S) - + 2/2 (L,R,SL,SR) 2/2 (V,H,SV,SH) - + 3/2 (L,R,C,SL,SR) 3/2 (V,H,C,SV,SH) - + Audio Coding Mode: Ljudkodningsläge: - + Dynamic Range Compression: Dynamisk intervallkomprimering: - + Fast Bit Allocation (Less Accurate) Snabb bitallokering (mindre exakt) - + Exponent Search Size: Exponentsökstorlek: - + Rename Output Files Namnändra utdatafiler - + Enter the pattern to rename the output files here! Ange namnändringsmall för utdatafiler här! - + Rename Output Files Namnändra utdatafiler - + <a href="reset">Reset</a> &nbsp; <a href="#">Show List of Macros</a> <a href="reset">Återställ</a> &nbsp; <a href="#">Visa lista över Macron</a> - + Rename Pattern: Namnändringsmall: - + Example File Name: Exempelnamn: - + Reset Advanced Options Återställ avancerade inställningar - + Encode Now! Koda om nu! - - + + About... Om... - + Exit Program Avsluta LameXP - + File Arkiv - + ? Info - + View Visa - + Style Stil - + Language Språk - + Tools Verktyg - + Configuration Inställningar - + Quit Avsluta - + Open File(s)... Öppna fil(er)... - - + + Visit Official Web-Site Besök hemsidan - - - - + + + + Check for Updates Sök efter uppdateringar - + Open Folder... Öppna mapp... - + Clear All Rensa alla - + Plastique Plastique - + Cleanlooks Cleanlooks - + Windows Vista ("Aero") Windows Vista ("Aero") - + Windows Classic Windows Classic - + Windows XP ("Luna") Windows XP ("Luna") - - + + Disable Update Reminder Inaktivera uppdateringsmeddelande - - + + Disable Sound Effects Inaktivera ljudeffekter - + Install WMA Decoder Installera WMA-avkodare - + Disable Nero AAC Notifications Inaktivera Nero AAC-meddelanden - + Show DropBox Visa DropBox - + From File... Från fil... - + Encode! Koda om! - + Disable Shell Integration Inaktivera utforskarintegration - + Frequently Asked Questions Vanliga frågor - + Changelog Ändringslogg - + Translator's Guide Översättningsguide - + Help && Support Hjälp && support - + Open Folder Recursively... Öppna mapp rekursivt - + Check for Beta Updates Sök efter beta-uppdateringar - + Import Cue Sheet Importera cue-fil - + Disable Slow Startup Notifications Inaktivera meddelanden om långsam uppstart - + Hibernate Computer On Shutdown Försätt datorn i viloläge vid avslut - + Adding file(s), please wait... Lägger till fil(er), vänta... - - + + Access Denied Åtkomst nekad - + %1 file(s) have been rejected, because read access was not granted! %1 fil(er) har undantagits, på grund av att åtkomst nekades! - + This usually means the file is locked by another process. Det innebär oftast att filen är låst av någon annan process. - + CDDA Files CDDA-filer - + %1 file(s) have been rejected, because they are dummy CDDA files! %1 fil(er) har undantagits, på grund av att det är fejkade CDDA-filer - + Sorry, LameXP cannot extract audio tracks from an Audio-CD at present. LameXP kan för närvarande inte extrahera ljudspår från en ljud-CD. - + We recommend using %1 for that purpose. Vi rekommenderar att du använder %1 för det ändamålet. - + Cue Sheet Cue-fil - + %1 file(s) have been rejected, because they appear to be Cue Sheet images! %1 fil(er) har undantagits, på grund av att de verkar vara cue-filer! - + Please use LameXP's Cue Sheet wizard for importing Cue Sheet files. Använd LameXPs cue-guide för att importera cue-filer. - + Files Rejected Undantagna filer - + %1 file(s) have been rejected, because the file format could not be recognized! %1 fil(er) har undantagits, på grund av att filformatet inte känns igen! - + This usually means the file is damaged or the file format is not supported. Det innebär oftast att filen är skadad eller att filformatet inte stöds. - + Scanning folder(s) for files, please wait... Genomsöker mapp(ar) efter fil(er), vänta... - + DEMO VERSION DEMOVERSION - + You can drop in audio files here! Du kan dra och släppa filer här! - + Initializing directory outline, please be patient... Initierar mappdisposition, vänta... - + Open File in External Application Öppna fil i externt program - + Browse File Location Öppna målmappen - + Browse Selected Folder Öppna markerad mapp - + Refresh Directory Outline Uppdatera mappdisposition - + Bookmark Current Output Folder Lägg till aktuell utdatamapp i favoriter - + Export Meta Tags to CSV File Exportera metadata till CSV-fil - + Import Meta Tags from CSV File Importera metadata från CSV-fil - + License Declined Licensavtal avvisat - + You have declined the license. Consequently the application will exit now! Du har nekat att godkänna licensavtalet. Programmet kommer nu att avslutas! - + Goodbye! Hej då! - + LameXP - Expired LameXP - Upphört - + This demo (pre-release) version of LameXP has expired at %1. Denna demoversion av LameXP har upphört att gälla från %1. - + LameXP is free software and release versions won't expire. LameXP är kostnadsfritt och release-versionerna upphör inte att gälla. - - + + Exit Program Avsluta programmet - + It seems that a bogus anti-virus software is slowing down the startup of LameXP. Det verkar som ett antivirusprogram orsakar långsammare uppstart av LameXP. - + Please refer to the %1 document for details and solutions! Läs gärna %1 för detaljer och lösningar! - + Slow Startup Långsam uppstart - - - - - + + + + + Discard Stäng - - + + Don't Show Again Visa inte igen - + Urgent Update Viktig uppdatering - + Your version of LameXP is more than a year old. Time for an update! Din version av LameXP är mer än ett år gammal. Dags att uppdatera! - - + + Ignore Ignorera - + Skipping update check this time, please be patient... Hoppar över uppdateringskontrollen den här gången, vänta... - - - + + + Update Reminder Uppdateringspåminnelse - + Your last update check was more than 14 days ago. Check for updates now? Din senaste uppdateringskontroll var för mer än 14 dagar sedan. Vill du söka efter uppdateringar nu? - + Your did not check for LameXP updates yet. Check for updates now? Du har inte genomfört uppdateringskontroll ännu. Vill du söka efter uppdateringar nu? - + Postpone Skjut upp - + LameXP detected that your version of the Nero AAC encoder is outdated! LameXP har uptäckt att din version av Nero AAC-kodare är utdaterad! - + The current version available is %1 (or later), but you still have version %2 installed. Aktuell version är %1 (eller senare), men du har fortfarande version %2. - + n/a n/a - + You can download the latest version of the Nero AAC encoder from the Nero website at: Du kan ladda ner senaste versionen av Nero AAC-kodare från Neros webbsida: - + (Hint: Please ignore the name of the downloaded ZIP file and check the included 'changelog.txt' instead!) (Tips: Bortse från den nedladde zipfilens namn, och kontrollera istället den inkluderade textfilen 'changelog.txt'!) - + AAC Encoder Outdated AAC-kodare utdaterad - + The Nero AAC encoder could not be found. AAC encoding support will be disabled. Neros AAC-kodare kan inte hittas. Stödet för AAC-kodning kommer att inaktiveras. - + Please put 'neroAacEnc.exe', 'neroAacDec.exe' and 'neroAacTag.exe' into the LameXP directory! Placera 'neroAacEnc.exe', 'neroAacDec.exe' och 'neroAacTag.exe' i LameXPs programmmapp! - + Your LameXP directory is located here: Din LameXP programmapp finns här: - + You can download the Nero AAC encoder for free from the official Nero website at: Du kan ladda ner Nero AAC-kodare gratis från den officiella webbsidan: - + AAC Support Disabled AAC-stödet är inaktiverat - - - + + + LameXP LameXP - + You must add at least one file to the list before proceeding! Du måste lägga till minst en fil till listan innan du fortsätter! - + Not Found Kan inte hittas - + Your currently selected TEMP folder does not exist anymore: Din aktuella TEMP-mapp finns inte längre: - + Restore Default Återställ standard - + Cancel Avbryt - + There are less than %1 GB of free diskspace available on your system's TEMP folder. Det finns mindre än %1 GB ledigt diskutrymme i systemets temp-mapp. - + It is highly recommend to free up more diskspace before proceeding with the encode! Du behöver frigöra mer diskutrymme innan du fortsätter med omkodningen! - + Your TEMP folder is located at: Temp-mappens placering: - + Low Diskspace Warning Varning för dåligt diskutrymme - + Abort Encoding Process Avbryt omkodningsprocessen - + Clean Disk Now Rensa disken nu - + Low Diskspace Dåligt diskutrymme - + You are proceeding with low diskspace. Problems might occur! Du fortsätter med dåligt diskutrymme. Problem kan uppstå! - + Sorry, an unsupported encoder has been chosen! En kodare som saknar stöd har valts! - + Cannot write to the selected output directory. Kan inte skriva till den valda utdatamappen. - + Please choose a different directory! Välj en annan målmapp! - + Load Translation Läs in översättning - + Translation Files Översättningsfiler - + Do you really want to disable the update reminder? Vill du verkligen inaktivera uppdateringspåminnelsen? - - - - - - - + + + + + + + Yes Ja - - - - - - - + + + + + + + No Nej - + The update reminder has been disabled. Uppdateringspåminnelsen har inaktiverats. - + Please remember to check for updates at regular intervals! Glöm inte att söka efter uppdateringar med jämna mellanrum! - + The update reminder has been re-enabled. Uppdateringspåminnelsen har återaktiverats. - + Do you really want to disable all sound effects? Vill du verkligen inaktivera alla ljudeffekter? - - + + Sound Effects Ljudeffekter - + All sound effects have been disabled. Alla ljudeffekter har inaktiverats. - + The sound effects have been re-enabled. Ljudeffekterna har återaktiverats. - - - + + + Nero AAC Notifications Nero AAC-meddelanden - + Do you really want to disable all Nero AAC Encoder notifications? Vill du verkligen inaktivera alla Nero AAC-meddelanden? - + All Nero AAC Encoder notifications have been disabled. Alla Nero AAC-meddelanden har inaktiverats. - + The Nero AAC Encoder notifications have been re-enabled. Nero AAC-meddelanden har återaktiverats. - - - + + + Slow Startup Notifications Meddelande om långsam uppstart - + Do you really want to disable the slow startup notifications? Vill du verkligen inaktivera meddelanden om långsam uppstart? - + The slow startup notifications have been disabled. Meddelanden om långsam uppstart har inaktiverats. - + The slow startup notifications have been re-enabled. Meddelanden om långsam uppstart har återaktiverats. - - + + Open Cue Sheet Öppna cue-fil - - + + Cue Sheet File Cue-fil - - - + + + Beta Updates Beta-uppdateringar - + Do you really want LameXP to check for Beta (pre-release) updates? Vill du verkligen att LameXP skall söka efter beta-uppdateringar? - + LameXP will check for Beta (pre-release) updates from now on. LameXP kommer i fortsättningen att söka efter beta-uppdatyeringar. - + Check Now Sök nu - + LameXP will <i>not</i> check for Beta (pre-release) updates from now on. LameXP kommer i fortsättningen <i>inte</i> att söka efter beta-uppdateringar. - - - + + + Hibernate Computer Viloläge - + Do you really want the computer to be hibernated on shutdown? Vill du verkligen att datorn skall försättas i viloläge vid avslut? - + LameXP will hibernate the computer on shutdown from now on. LameXP kommer i fortsättningen att försätta datorn i viloläge vid avslut. - + LameXP will <i>not</i> hibernate the computer on shutdown from now on. LameXP kommer i fortsättningen <i>inte</i> att försätta datorn i viloläge vid avslut. - - + + Shell Integration Utforskarintegrering - + Do you really want to disable the LameXP shell integration? Vill du verkligen inaktivera LameXPs utforskarintegration? - + The LameXP shell integration has been disabled. LameXPs utforskarintegration har inaktiverats. - + The LameXP shell integration has been re-enabled. LameXPs utforskarintegration har återaktiverats. - - + + Add file(s) Lägg till fil(er) - - + + Add Folder Lägg till mapp - - + + Save CSV file Spara CSV-fil - - - - + + + + CSV File CSV-fil - + CSV Export CSV-export - + Sorry, there are no meta tags that can be exported! Det finns ingen meta-data som kan exporteras! - + Sorry, failed to open CSV file for writing! Kunde inte öppna CSV-filen för skrivning! - + Sorry, failed to write to the CSV file! Kunde inte skriva till CSV-filen! - + The CSV files was created successfully! CSV-filen skapades korrekt! - - + + Open CSV file Öppna CSV-fil - + CSV Import CSV-import - + Sorry, failed to open CSV file for reading! Kunde inte öppna CSV-filen för läsning! - + Sorry, failed to read from the CSV file! Kunde inte läsa från CSV-filen! - + Sorry, the CSV file does not contain any known fields! CSV-filen innehåller inga kända fält! - + CSV file is incomplete. Not all files were updated! CSV-filen är inte komplett. Alla filer uppdaterades inte! - + The CSV files was imported successfully! CSV-filen importerades korrekt! - - + + New Folder Ny mapp - + Enter the name of the new folder: Namn på den nya mappen: - + Failed to create folder Kunde inte skapa någon mapp - + The new folder could not be created: Den nya mappen kunde inte skapas: - + Drive is read-only or insufficient access rights! Diskenheten är skrivskyddad eller åtkomsträttigheter saknas! - + QAAC (Apple) QAAC (Apple) - + FHG AAC (Winamp) FHG AAC (Winamp) - + Nero AAC Nero AAC - + Not available! Ej tillgänglig! - + Current AAC Encoder: %1 Aktuell AAC-kodare: %1 - - - - + + + + Quality Level %1 Kvallitetsnivå %1 - - - + + + Compression %1 Kompression %1 - - - + + + Uncompressed Okomprimerad - + Best Quality (Very Slow) Bäst kvallitet (långsam) - + High Quality (Recommended) Hög kvallitet (rekommenderas) - + Average Quality (Default) Medelkvallitet (standard) - + Low Quality (Fast) Låg kvallitet (snabb) - + Poor Quality (Very Fast) Dålig kvallitet (mycket snabb) - + File name without extension Filnamn utan filtillägg - + Track number with leading zero Spårnummer med inledande nolla - + Track title Spårtitel - + Artist name Artistnamn - + Album name Albumnamn - + Year with (at least) four digits Årtal med (minst) fyra siffror - + Comment Kommentar - + Characters forbidden in file names: Förbjudna tecken i filnamn: - + Rename Macros Namnändra macron - + %1 Instance(s) %1 instans(er) - + Cannot write to the selected directory. Please choose another directory! Kan inte skriva till den specificerade mappen. Välj en annan destination! - + Already Running Körs redan - + LameXP is already running, please use the running instance! LameXP körs redan, använd den redan startade instansen! @@ -2867,141 +2872,141 @@ Stäng - + Show details for selected job Visa detaljerad info för markerad åtgärd - + Browse Output File Location Öppna utdatamnappen - + Encoding Files Kodar om filer - + Your files are being encoded, please be patient... Dina filer kodas om, vänta... - + Encoding files, please wait... Kodar om filer, vänta... - + Multi-threading enabled: Running %1 instances in parallel! Flertrådskörning aktiverad: Kör %1 parallella instanser! - + Aborted! Waiting for running jobs to terminate... Avbrutet! Väntar på att aktiva processer skall avslutas... - + Encoding: %1 files of %2 completed so far, please wait... Omkodning: %1 fil(er) av %2 bearbetade hittills, vänta... - + Creating the playlist file, please wait... Skapar spelningslista, vänta... - + Process was aborted by the user after %1 file(s)! Åtgärden avbröts av användaren efter %1 fil(er)! - + Process was aborted prematurely by the user! Åtgärden avbröts i förtid av användaren! - + LameXP - Aborted LameXP - Avbrutet - + Process was aborted by the user. Åtgärden avbröts av användaren. - + Process finished after %1. Åtgärden slutförd efter %1. - + Error: %1 of %2 files failed. Double-click failed items for detailed information! Fel: %1 av %2 filer misslyckades. Dubbelklicka på det misslyckade objektet för detaljerad information! - + LameXP - Error LameXP - Fel - + At least one file has failed! Minst en fil har misslyckats! - + All files completed successfully. Alla filer korrekt omkodade. - + LameXP - Done LameXP - Klar - + Playlist creation failed Kunde inte skapa spelningslista! - + The playlist file could not be created: Spelningslistan kunde inte skapas: - + Warning: Computer will shutdown in %1 seconds... Varning! Datorn kommer att stängas av om %1 sekunder... - - + + Cancel Shutdown Avbryt avstängning - + hour(s) timma(r) - - + + minute(s) minut(er) - - + + second(s) sekund(er) - + millisecond(s) millisekund(er) diff --git a/etc/Translation/LameXP_TW.ts b/etc/Translation/LameXP_TW.ts index 5a655fb3..14bb6fc4 100644 --- a/etc/Translation/LameXP_TW.ts +++ b/etc/Translation/LameXP_TW.ts @@ -681,18 +681,6 @@ Encoder / Format 編碼器/格式 - - Lame MP3 - Lame MP3 - - - Ogg Vorbis - Ogg Vorbis - - - Wave (PCM) - Wav (PCM) - FLAC FLAC @@ -1457,10 +1445,6 @@ LameXP will <i>not</i> check for Beta (pre-release) updates from now on. LameXP 將 <i> 從今以后 </i> 不檢查測試版更新. - - Aften A/52 - Aften A/52 - Lame MP3: Lame MP3: @@ -1685,10 +1669,6 @@ Bookmark Current Output Folder 收藏當前輸出文件夾 - - MPEG-4 AAC - MPEG-4 AAC - AAC Encoder-Options AAC 編碼器-選項 @@ -1753,10 +1733,6 @@ Skipping update check this time, please be patient... 跳過檢查更新的時間,請耐心等待... - - DCA Enc - DCA Enc - Export Meta Tags to CSV File Meta標簽導出到CSV文件 @@ -1857,6 +1833,34 @@ Refresh Directory Outline 刷新輸出目錄列表 + + MP3 + + + + Ogg/Vorbis + + + + AAC/MP4 + + + + PCM/Wave + + + + A/52 + + + + DCA + + + + Opus + + MetaInfo diff --git a/etc/Translation/LameXP_UK.ts b/etc/Translation/LameXP_UK.ts index 9e5063ff..04ca966d 100644 --- a/etc/Translation/LameXP_UK.ts +++ b/etc/Translation/LameXP_UK.ts @@ -682,18 +682,6 @@ Encoder / Format Кодер / Формат - - Lame MP3 - Lame MP3 - - - Ogg Vorbis - Ogg Vorbis - - - Wave (PCM) - Wave (PCM) - FLAC FLAC @@ -1430,10 +1418,6 @@ Cannot write to the selected directory. Please choose another directory! Не можливо вести запис до обраної теки. Будь ласка, оберіть іншу! - - Aften A/52 - Aften A/52 - Lame MP3: Lame MP3: @@ -1686,10 +1670,6 @@ Bookmark Current Output Folder Додати поточну теку до закладок - - MPEG-4 AAC - MPEG-4 AAC - AAC Encoder-Options Налаштування кодера AAC @@ -1754,10 +1734,6 @@ Skipping update check this time, please be patient... Наразі йде переривання перевірки оновлень, будь ласка, зачекайте... - - DCA Enc - DCA Enc - Export Meta Tags to CSV File Експортувати метадані до файлу CSV @@ -1858,6 +1834,34 @@ Refresh Directory Outline Поновити структуру тек + + MP3 + + + + Ogg/Vorbis + + + + AAC/MP4 + + + + PCM/Wave + + + + A/52 + + + + DCA + + + + Opus + + MetaInfo diff --git a/etc/Translation/LameXP_ZH.ts b/etc/Translation/LameXP_ZH.ts index a83974cc..4c6b2afa 100644 --- a/etc/Translation/LameXP_ZH.ts +++ b/etc/Translation/LameXP_ZH.ts @@ -681,18 +681,6 @@ Encoder / Format 编码器/格式 - - Lame MP3 - Lame MP3 - - - Ogg Vorbis - Ogg Vorbis - - - Wave (PCM) - Wav (PCM) - FLAC FLAC @@ -1457,10 +1445,6 @@ LameXP will <i>not</i> check for Beta (pre-release) updates from now on. LameXP 将 <i> 从今以后 </i> 不检查测试版更新. - - Aften A/52 - Aften A/52 - Lame MP3: Lame MP3: @@ -1685,10 +1669,6 @@ Bookmark Current Output Folder 收藏当前输出文件夹 - - MPEG-4 AAC - MPEG-4 AAC - AAC Encoder-Options AAC 编码器-选项 @@ -1753,10 +1733,6 @@ Skipping update check this time, please be patient... 跳过检查更新的时间,请耐心等待... - - DCA Enc - DCA Enc - Export Meta Tags to CSV File Meta标签导出到CSV文件 @@ -1857,6 +1833,34 @@ Refresh Directory Outline 刷新输出目录列表 + + MP3 + + + + Ogg/Vorbis + + + + AAC/MP4 + + + + PCM/Wave + + + + A/52 + + + + DCA + + + + Opus + + MetaInfo diff --git a/gui/MainWindow.ui b/gui/MainWindow.ui index c4938578..53d40ca8 100644 --- a/gui/MainWindow.ui +++ b/gui/MainWindow.ui @@ -787,7 +787,7 @@ - Lame MP3 + MP3 true @@ -797,21 +797,21 @@ - Ogg Vorbis + Ogg/Vorbis - MPEG-4 AAC + AAC/MP4 - + - Wave (PCM) + PCM/Wave @@ -831,17 +831,17 @@ - + - Aften A/52 + A/52 - + - DCA Enc + DCA @@ -884,7 +884,7 @@ - + Qt::Horizontal @@ -897,7 +897,7 @@ - + Qt::Horizontal @@ -910,7 +910,7 @@ - + Qt::Horizontal @@ -943,6 +943,26 @@ + + + + Opus + + + + + + + Qt::Horizontal + + + + 1 + 20 + + + + @@ -1303,8 +1323,8 @@ 0 0 - 602 - 1515 + 604 + 1524 @@ -4102,6 +4122,8 @@ + + diff --git a/res/Tools_Decd.qrc b/res/Tools_Decd.qrc index e333ef06..3be5c232 100644 --- a/res/Tools_Decd.qrc +++ b/res/Tools_Decd.qrc @@ -8,6 +8,7 @@ tools/mpcdec.exe tools/mpg123.exe tools/oggdec.exe + tools/opusdec.exe tools/shorten.exe tools/speexdec.exe tools/tta.exe diff --git a/res/Tools_Encd.qrc b/res/Tools_Encd.qrc index 4c59c0a7..80fed1ed 100644 --- a/res/Tools_Encd.qrc +++ b/res/Tools_Encd.qrc @@ -11,5 +11,6 @@ tools/oggenc2.i386.exe tools/oggenc2.sse2.exe tools/oggenc2.x64.exe + tools/opusenc.exe diff --git a/res/localization/LameXP_DE.qm b/res/localization/LameXP_DE.qm index 2e47a827..e8885999 100644 Binary files a/res/localization/LameXP_DE.qm and b/res/localization/LameXP_DE.qm differ diff --git a/res/localization/LameXP_ES.qm b/res/localization/LameXP_ES.qm index b65dca62..a3ca2387 100644 Binary files a/res/localization/LameXP_ES.qm and b/res/localization/LameXP_ES.qm differ diff --git a/res/localization/LameXP_FR.qm b/res/localization/LameXP_FR.qm index c082fe22..d9b457fa 100644 Binary files a/res/localization/LameXP_FR.qm and b/res/localization/LameXP_FR.qm differ diff --git a/res/localization/LameXP_IT.qm b/res/localization/LameXP_IT.qm index 0086164e..36df118a 100644 Binary files a/res/localization/LameXP_IT.qm and b/res/localization/LameXP_IT.qm differ diff --git a/res/localization/LameXP_KR.qm b/res/localization/LameXP_KR.qm index 06776f15..050325da 100644 Binary files a/res/localization/LameXP_KR.qm and b/res/localization/LameXP_KR.qm differ diff --git a/res/localization/LameXP_PL.qm b/res/localization/LameXP_PL.qm index 532417b0..fcac6d35 100644 Binary files a/res/localization/LameXP_PL.qm and b/res/localization/LameXP_PL.qm differ diff --git a/res/localization/LameXP_SV.qm b/res/localization/LameXP_SV.qm index 5ba3b69d..b75a5f60 100644 Binary files a/res/localization/LameXP_SV.qm and b/res/localization/LameXP_SV.qm differ diff --git a/res/localization/LameXP_TW.qm b/res/localization/LameXP_TW.qm index 287cba5f..7baf9b6a 100644 Binary files a/res/localization/LameXP_TW.qm and b/res/localization/LameXP_TW.qm differ diff --git a/res/localization/LameXP_UK.qm b/res/localization/LameXP_UK.qm index 88241ed3..6738c71e 100644 Binary files a/res/localization/LameXP_UK.qm and b/res/localization/LameXP_UK.qm differ diff --git a/res/localization/LameXP_ZH.qm b/res/localization/LameXP_ZH.qm index 54d8aa45..80245fbc 100644 Binary files a/res/localization/LameXP_ZH.qm and b/res/localization/LameXP_ZH.qm differ diff --git a/res/tools/opusdec.exe b/res/tools/opusdec.exe new file mode 100644 index 00000000..4c56032e Binary files /dev/null and b/res/tools/opusdec.exe differ diff --git a/res/tools/opusenc.exe b/res/tools/opusenc.exe new file mode 100644 index 00000000..f5f70050 Binary files /dev/null and b/res/tools/opusenc.exe differ diff --git a/src/Config.h b/src/Config.h index cb060313..2f141eb2 100644 --- a/src/Config.h +++ b/src/Config.h @@ -29,8 +29,8 @@ #define VER_LAMEXP_MINOR_HI 0 #define VER_LAMEXP_MINOR_LO 5 #define VER_LAMEXP_TYPE Alpha -#define VER_LAMEXP_PATCH 7 -#define VER_LAMEXP_BUILD 1050 +#define VER_LAMEXP_PATCH 8 +#define VER_LAMEXP_BUILD 1052 /////////////////////////////////////////////////////////////////////////////// // Tool versions (minimum expected versions!) diff --git a/src/Decoder_ALAC.cpp b/src/Decoder_ALAC.cpp index a1779479..e69849c1 100644 --- a/src/Decoder_ALAC.cpp +++ b/src/Decoder_ALAC.cpp @@ -59,7 +59,7 @@ bool ALACDecoder::decode(const QString &sourceFile, const QString &outputFile, v bool bAborted = false; //The ALAC Decoder doesn't actually send any status updates :-[ - emit statusUpdated(20 + (QUuid::createUuid().data1 % 80)); + emit statusUpdated(20 + (QUuid::createUuid().data1 % 60)); while(process.state() != QProcess::NotRunning) { diff --git a/src/Decoder_Opus.cpp b/src/Decoder_Opus.cpp new file mode 100644 index 00000000..5a557433 --- /dev/null +++ b/src/Decoder_Opus.cpp @@ -0,0 +1,154 @@ +/////////////////////////////////////////////////////////////////////////////// +// LameXP - Audio Encoder Front-End +// Copyright (C) 2004-2012 LoRd_MuldeR +// +// 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. +// +// http://www.gnu.org/licenses/gpl-2.0.txt +/////////////////////////////////////////////////////////////////////////////// + +#include "Decoder_Opus.h" + +#include "Global.h" + +#include +#include +#include +#include + +OpusDecoder::OpusDecoder(void) +: + m_binary(lamexp_lookup_tool("opusdec.exe")) +{ + if(m_binary.isEmpty()) + { + throw "Error initializing Opus decoder. Tool 'opusdec.exe' is not registred!"; + } +} + +OpusDecoder::~OpusDecoder(void) +{ +} + +bool OpusDecoder::decode(const QString &sourceFile, const QString &outputFile, volatile bool *abortFlag) +{ + QProcess process; + QStringList args; + + args << QDir::toNativeSeparators(sourceFile); + args << QDir::toNativeSeparators(outputFile); + + if(!startProcess(process, m_binary, args)) + { + return false; + } + + bool bTimeout = false; + bool bAborted = false; + int prevProgress = -1; + + //QRegExp regExp("\\s+Time:\\s+(\\d+):(\\d+)\\.(\\d+)\\s+\\[(\\d+):(\\d+)\\.(\\d+)\\],"); + + //The ALAC Decoder doesn't actually send any status updates :-[ + emit statusUpdated(20 + (QUuid::createUuid().data1 % 60)); + + while(process.state() != QProcess::NotRunning) + { + if(*abortFlag) + { + process.kill(); + bAborted = true; + emit messageLogged("\nABORTED BY USER !!!"); + break; + } + process.waitForReadyRead(m_processTimeoutInterval); + if(!process.bytesAvailable() && process.state() == QProcess::Running) + { + process.kill(); + qWarning("opusdec process timed out <-- killing!"); + emit messageLogged("\nPROCESS TIMEOUT !!!"); + bTimeout = true; + break; + } + while(process.bytesAvailable() > 0) + { + QByteArray line = process.readLine(); + QString text = QString::fromUtf8(line.constData()).simplified(); + /* if(regExp.lastIndexIn(text) >= 0) + { + int values[6]; + for(int i = 0; i < 6; i++) + { + bool ok = false; + int temp = regExp.cap(i+1).toInt(&ok); + values[i] = (ok ? temp : 0); + } + int timeDone = (60 * values[0]) + values[1]; + int timeLeft = (60 * values[3]) + values[4]; + if(timeDone > 0 || timeLeft > 0) + { + int newProgress = qRound((static_cast(timeDone) / static_cast(timeDone + timeLeft)) * 100.0); + if(newProgress > prevProgress) + { + emit statusUpdated(newProgress); + prevProgress = qMin(newProgress + 2, 99); + } + } + } */ + if(!text.isEmpty()) + { + emit messageLogged(text); + } + } + } + + process.waitForFinished(); + if(process.state() != QProcess::NotRunning) + { + process.kill(); + process.waitForFinished(-1); + } + + emit statusUpdated(100); + emit messageLogged(QString().sprintf("\nExited with code: 0x%04X", process.exitCode())); + + if(bTimeout || bAborted || process.exitCode() != EXIT_SUCCESS) + { + return false; + } + + return true; +} + +bool OpusDecoder::isFormatSupported(const QString &containerType, const QString &containerProfile, const QString &formatType, const QString &formatProfile, const QString &formatVersion) +{ + if(containerType.compare("OGG", Qt::CaseInsensitive) == 0) + { + if(formatType.compare("Opus", Qt::CaseInsensitive) == 0) + { + { + return true; + } + } + } + + return false; +} + +QStringList OpusDecoder::supportedTypes(void) +{ + return QStringList() << "Opus Audio Codec (*.opus *.ogg)"; +} + diff --git a/src/Decoder_Opus.h b/src/Decoder_Opus.h new file mode 100644 index 00000000..825ec8ef --- /dev/null +++ b/src/Decoder_Opus.h @@ -0,0 +1,38 @@ +/////////////////////////////////////////////////////////////////////////////// +// LameXP - Audio Encoder Front-End +// Copyright (C) 2004-2012 LoRd_MuldeR +// +// 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. +// +// http://www.gnu.org/licenses/gpl-2.0.txt +/////////////////////////////////////////////////////////////////////////////// + +#pragma once + +#include "Decoder_Abstract.h" + +class OpusDecoder : public AbstractDecoder +{ +public: + OpusDecoder(void); + ~OpusDecoder(void); + + virtual bool decode(const QString &sourceFile, const QString &outputFile, volatile bool *abortFlag); + static bool isFormatSupported(const QString &containerType, const QString &containerProfile, const QString &formatType, const QString &formatProfile, const QString &formatVersion); + static QStringList supportedTypes(void); + +private: + const QString m_binary; +}; diff --git a/src/Dialog_MainWindow.cpp b/src/Dialog_MainWindow.cpp index c4b8d2b7..b5ff33d5 100644 --- a/src/Dialog_MainWindow.cpp +++ b/src/Dialog_MainWindow.cpp @@ -226,6 +226,7 @@ MainWindow::MainWindow(FileListModel *fileListModel, AudioFileModel *metaInfo, S m_encoderButtonGroup->addButton(radioButtonEncoderAAC, SettingsModel::AACEncoder); m_encoderButtonGroup->addButton(radioButtonEncoderAC3, SettingsModel::AC3Encoder); m_encoderButtonGroup->addButton(radioButtonEncoderFLAC, SettingsModel::FLACEncoder); + m_encoderButtonGroup->addButton(radioButtonEncoderOpus, SettingsModel::OpusEncoder); m_encoderButtonGroup->addButton(radioButtonEncoderDCA, SettingsModel::DCAEncoder); m_encoderButtonGroup->addButton(radioButtonEncoderPCM, SettingsModel::PCMEncoder); m_modeButtonGroup = new QButtonGroup(this); @@ -238,6 +239,7 @@ MainWindow::MainWindow(FileListModel *fileListModel, AudioFileModel *metaInfo, S radioButtonEncoderAAC->setChecked((m_settings->compressionEncoder() == SettingsModel::AACEncoder) && (m_neroEncoderAvailable || m_fhgEncoderAvailable || m_qaacEncoderAvailable)); radioButtonEncoderAC3->setChecked(m_settings->compressionEncoder() == SettingsModel::AC3Encoder); radioButtonEncoderFLAC->setChecked(m_settings->compressionEncoder() == SettingsModel::FLACEncoder); + radioButtonEncoderOpus->setChecked(m_settings->compressionEncoder() == SettingsModel::OpusEncoder); radioButtonEncoderDCA->setChecked(m_settings->compressionEncoder() == SettingsModel::DCAEncoder); radioButtonEncoderPCM->setChecked(m_settings->compressionEncoder() == SettingsModel::PCMEncoder); radioButtonModeQuality->setChecked(m_settings->compressionRCMode() == SettingsModel::VBRMode); @@ -1455,6 +1457,7 @@ void MainWindow::encodeButtonClicked(void) case SettingsModel::AACEncoder: case SettingsModel::AC3Encoder: case SettingsModel::FLACEncoder: + case SettingsModel::OpusEncoder: case SettingsModel::DCAEncoder: case SettingsModel::PCMEncoder: break; @@ -3149,6 +3152,10 @@ void MainWindow::updateRCMode(int id) sliderBitrate->setMinimum(0); sliderBitrate->setMaximum(8); break; + case SettingsModel::OpusEncoder: + sliderBitrate->setMinimum(1); + sliderBitrate->setMaximum(32); + break; case SettingsModel::DCAEncoder: sliderBitrate->setMinimum(1); sliderBitrate->setMaximum(128); @@ -3191,6 +3198,9 @@ void MainWindow::updateBitrate(int value) case SettingsModel::FLACEncoder: labelBitrate->setText(tr("Compression %1").arg(value)); break; + case SettingsModel::OpusEncoder: + labelBitrate->setText(QString("≈ %1 kbps").arg(qMin(500, value * 8))); + break; case SettingsModel::AC3Encoder: labelBitrate->setText(tr("Quality Level %1").arg(qMin(1024, qMax(0, value * 64)))); break; diff --git a/src/Dialog_Processing.cpp b/src/Dialog_Processing.cpp index d73b1998..8ce4a373 100644 --- a/src/Dialog_Processing.cpp +++ b/src/Dialog_Processing.cpp @@ -39,6 +39,7 @@ #include "Encoder_FLAC.h" #include "Encoder_MP3.h" #include "Encoder_Vorbis.h" +#include "Encoder_Opus.h" #include "Encoder_Wave.h" #include "Filter_Downmix.h" #include "Filter_Normalize.h" @@ -835,7 +836,15 @@ AbstractEncoder *ProcessingDialog::makeEncoder(bool *nativeResampling) encoder = flacEncoder; } break; - case SettingsModel::DCAEncoder: + case SettingsModel::OpusEncoder: + { + OpusEncoder *opusEncoder = new OpusEncoder(); + opusEncoder->setBitrate(m_settings->compressionBitrate()); + opusEncoder->setRCMode(m_settings->compressionRCMode()); + //TODO: opusEncoder->setCustomParams(m_settings->customParametersOpus()); + encoder = opusEncoder; + } + break; case SettingsModel::DCAEncoder: { DCAEncoder *dcaEncoder = new DCAEncoder(); dcaEncoder->setBitrate(m_settings->compressionBitrate()); diff --git a/src/Encoder_Opus.cpp b/src/Encoder_Opus.cpp new file mode 100644 index 00000000..372d84e0 --- /dev/null +++ b/src/Encoder_Opus.cpp @@ -0,0 +1,180 @@ +/////////////////////////////////////////////////////////////////////////////// +// LameXP - Audio Encoder Front-End +// Copyright (C) 2004-2012 LoRd_MuldeR +// +// 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. +// +// http://www.gnu.org/licenses/gpl-2.0.txt +/////////////////////////////////////////////////////////////////////////////// + +#include "Encoder_Opus.h" + +#include "Global.h" +#include "Model_Settings.h" + +#include +#include +#include + +OpusEncoder::OpusEncoder(void) +: + m_binary(lamexp_lookup_tool("opusenc.exe")) +{ + if(m_binary.isEmpty()) + { + throw "Error initializing Opus encoder. Tool 'opusenc.exe' is not registred!"; + } +} + +OpusEncoder::~OpusEncoder(void) +{ +} + +bool OpusEncoder::encode(const QString &sourceFile, const AudioFileModel &metaInfo, const QString &outputFile, volatile bool *abortFlag) +{ + QProcess process; + QStringList args; + + args << "--music"; //TODO: Make other optimizations available! + + switch(m_configRCMode) + { + case SettingsModel::VBRMode: + args << "--vbr"; + break; + case SettingsModel::ABRMode: + args << "-cvbr"; + break; + case SettingsModel::CBRMode: + args << "--hard-cbr"; + break; + default: + throw "Bad rate-control mode!"; + break; + } + + args << QString("--bitrate") << QString::number(qMax(0, qMin(500, m_configBitrate * 8))); + + if(!metaInfo.fileName().isEmpty()) args << "--title" << metaInfo.fileName(); + if(!metaInfo.fileArtist().isEmpty()) args << "--artist" << metaInfo.fileArtist(); + if(!metaInfo.fileAlbum().isEmpty()) args << "--comment" << QString("album=%1").arg(metaInfo.fileAlbum()); + if(!metaInfo.fileGenre().isEmpty()) args << "--comment" << QString("genre=%1").arg(metaInfo.fileGenre()); + if(!metaInfo.fileComment().isEmpty()) args << "--comment" << QString("comment=%1").arg(metaInfo.fileComment()); + if(metaInfo.fileYear()) args << "--comment" << QString("date=%1").arg(QString::number(metaInfo.fileYear())); + if(metaInfo.filePosition()) args << "--comment" << QString("track=%1").arg(QString::number(metaInfo.filePosition())); + + if(!m_configCustomParams.isEmpty()) args << m_configCustomParams.split(" ", QString::SkipEmptyParts); + + args << QDir::toNativeSeparators(sourceFile); + args << QDir::toNativeSeparators(outputFile); + + if(!startProcess(process, m_binary, args)) + { + return false; + } + + bool bTimeout = false; + bool bAborted = false; + int prevProgress = -1; + + QRegExp regExp("\\[(-|\\\\|/|\\|)\\]"); + + //The Opus encoder doesn't flus it's status updates :-[ + emit statusUpdated(20 + (QUuid::createUuid().data1 % 60)); + + while(process.state() != QProcess::NotRunning) + { + if(*abortFlag) + { + process.kill(); + bAborted = true; + emit messageLogged("\nABORTED BY USER !!!"); + break; + } + process.waitForReadyRead(m_processTimeoutInterval); + if(!process.bytesAvailable() && process.state() == QProcess::Running) + { + process.kill(); + qWarning("Opus process timed out <-- killing!"); + emit messageLogged("\nPROCESS TIMEOUT !!!"); + bTimeout = true; + break; + } + while(process.bytesAvailable() > 0) + { + QByteArray line = process.readLine(); + QString text = QString::fromUtf8(line.constData()).simplified(); + if(regExp.lastIndexIn(text) >= 0) + { + bool ok = false; + int progress = regExp.cap(1).toInt(&ok); + if(ok && (progress > prevProgress)) + { + emit statusUpdated(progress); + prevProgress = qMin(progress + 2, 99); + } + } + else if(!text.isEmpty()) + { + emit messageLogged(text); + } + } + } + + process.waitForFinished(); + if(process.state() != QProcess::NotRunning) + { + process.kill(); + process.waitForFinished(-1); + } + + emit statusUpdated(100); + emit messageLogged(QString().sprintf("\nExited with code: 0x%04X", process.exitCode())); + + if(bTimeout || bAborted || process.exitCode() != EXIT_SUCCESS) + { + return false; + } + + return true; +} + +QString OpusEncoder::extension(void) +{ + return "opus"; +} + +bool OpusEncoder::isFormatSupported(const QString &containerType, const QString &containerProfile, const QString &formatType, const QString &formatProfile, const QString &formatVersion) +{ + if(containerType.compare("Wave", Qt::CaseInsensitive) == 0) + { + if(formatType.compare("PCM", Qt::CaseInsensitive) == 0) + { + return true; + } + } + + return false; +} + +const unsigned int *OpusEncoder::supportedChannelCount(void) +{ + return NULL; +} + +const unsigned int *OpusEncoder::supportedBitdepths(void) +{ + return NULL; +} diff --git a/src/Encoder_Opus.h b/src/Encoder_Opus.h new file mode 100644 index 00000000..4585e91c --- /dev/null +++ b/src/Encoder_Opus.h @@ -0,0 +1,44 @@ +/////////////////////////////////////////////////////////////////////////////// +// LameXP - Audio Encoder Front-End +// Copyright (C) 2004-2012 LoRd_MuldeR +// +// 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. +// +// http://www.gnu.org/licenses/gpl-2.0.txt +/////////////////////////////////////////////////////////////////////////////// + +#pragma once + +#include "Encoder_Abstract.h" + +#include + +class OpusEncoder : public AbstractEncoder +{ + Q_OBJECT + +public: + OpusEncoder(void); + ~OpusEncoder(void); + + virtual bool encode(const QString &sourceFile, const AudioFileModel &metaInfo, const QString &outputFile, volatile bool *abortFlag); + virtual bool isFormatSupported(const QString &containerType, const QString &containerProfile, const QString &formatType, const QString &formatProfile, const QString &formatVersion); + virtual QString extension(void); + virtual const unsigned int *supportedChannelCount(void); + virtual const unsigned int *supportedBitdepths(void); + +private: + const QString m_binary; +}; diff --git a/src/Model_Settings.h b/src/Model_Settings.h index 04338a73..fd8a3a4e 100644 --- a/src/Model_Settings.h +++ b/src/Model_Settings.h @@ -62,8 +62,9 @@ public: AACEncoder = 2, AC3Encoder = 3, FLACEncoder = 4, - DCAEncoder = 5, - PCMEncoder = 6 + OpusEncoder = 5, + DCAEncoder = 6, + PCMEncoder = 7 }; enum RCMode { diff --git a/src/Registry_Decoder.cpp b/src/Registry_Decoder.cpp index ece38811..160d37ad 100644 --- a/src/Registry_Decoder.cpp +++ b/src/Registry_Decoder.cpp @@ -36,6 +36,7 @@ #include "Decoder_Vorbis.h" #include "Decoder_Wave.h" #include "Decoder_WavPack.h" +#include "Decoder_Opus.h" #include "Decoder_WMA.h" #include "PlaylistImporter.h" @@ -63,6 +64,7 @@ AbstractDecoder *DecoderRegistry::lookup(const QString &containerType, const QSt PROBE_DECODER(WMADecoder); PROBE_DECODER(ADPCMDecoder); PROBE_DECODER(WaveDecoder); + PROBE_DECODER(OpusDecoder); PROBE_DECODER(AvisynthDecoder); return NULL; @@ -87,6 +89,7 @@ QStringList DecoderRegistry::getSupportedTypes(void) types << GET_FILETYPES(ALACDecoder); types << GET_FILETYPES(WMADecoder); types << GET_FILETYPES(ADPCMDecoder); + types << GET_FILETYPES(OpusDecoder); types << GET_FILETYPES(AvisynthDecoder); QStringList extensions; diff --git a/src/Thread_FileAnalyzer.cpp b/src/Thread_FileAnalyzer.cpp index 2f7f4b91..60b38366 100644 --- a/src/Thread_FileAnalyzer.cpp +++ b/src/Thread_FileAnalyzer.cpp @@ -108,8 +108,6 @@ const char *FileAnalyzer::g_tags_aud[] = void FileAnalyzer::run() { - qWarning("--- FileAnalyzer::run() ---"); - m_abortFlag = false; m_bAborted = false; diff --git a/src/Thread_FileAnalyzer_Task.cpp b/src/Thread_FileAnalyzer_Task.cpp index 475ac0dd..6297349a 100644 --- a/src/Thread_FileAnalyzer_Task.cpp +++ b/src/Thread_FileAnalyzer_Task.cpp @@ -173,6 +173,27 @@ void AnalyzeTask::run_ex(void) qWarning("Cue Sheet file detected, skipping!"); s_filesCueSheet++; } + else if((!QFileInfo(currentFile).suffix().compare("opus", Qt::CaseInsensitive)) || (!QFileInfo(currentFile).suffix().compare("ogg", Qt::CaseInsensitive))) + { + qDebug("Found a potential Opus audio file, investigating..."); + QFile opusTest(currentFile); + if(analyzeOpusFile(currentFile, file)) + { + qDebug("Accepted Opus file: %s", file.filePath().toUtf8().constData()); + QWriteLocker lock(&s_lock); + s_filesAccepted++; + s_recentlyAdded.insert(file.filePath().toLower()); + lock.unlock(); + waitForPreviousThreads(); + emit fileAnalyzed(file); + } + else + { + QWriteLocker lock(&s_lock); + qDebug("Rejected Opus file: %s", file.filePath().toUtf8().constData()); + s_filesRejected++; + } + } else if(!QFileInfo(currentFile).suffix().compare("avs", Qt::CaseInsensitive)) { qDebug("Found a potential Avisynth script, investigating..."); @@ -571,6 +592,28 @@ void AnalyzeTask::retrieveCover(AudioFileModel &audioFile, cover_t coverType, co } } +bool AnalyzeTask::analyzeOpusFile(const QString &filePath, AudioFileModel &info) +{ + QFile opusFile(filePath); + if(opusFile.open(QIODevice::ReadOnly)) + { + QByteArray data = opusFile.peek(1024); + int idx1 = data.indexOf(QString::fromAscii("OggS")); + int idx2 = data.indexOf(QString::fromAscii("OpusHead")); + if((idx1 >= 0) && (idx2 > idx1)) + { + info.setFormatContainerType("OGG"); + info.setFormatAudioType("Opus"); + opusFile.close(); + return true; + } + opusFile.close(); + return false; + } + + return false; +} + bool AnalyzeTask::analyzeAvisynthFile(const QString &filePath, AudioFileModel &info) { QProcess process; diff --git a/src/Thread_FileAnalyzer_Task.h b/src/Thread_FileAnalyzer_Task.h index 68975209..49887f6a 100644 --- a/src/Thread_FileAnalyzer_Task.h +++ b/src/Thread_FileAnalyzer_Task.h @@ -90,6 +90,7 @@ private: bool checkFile_CDDA(QFile &file); void retrieveCover(AudioFileModel &audioFile, cover_t coverType, const QByteArray &coverData); bool analyzeAvisynthFile(const QString &filePath, AudioFileModel &info); + bool analyzeOpusFile(const QString &filePath, AudioFileModel &info); void waitForPreviousThreads(void); const unsigned __int64 m_threadIdx; diff --git a/src/Tools.h b/src/Tools.h index 3620962b..3163ca75 100644 --- a/src/Tools.h +++ b/src/Tools.h @@ -73,6 +73,8 @@ g_lamexp_tools[] = {"0c019e13450dc664987e21f4e5489d182be7d6d0d81efbbaaf1c78693dfe3e38e0355b93", CPU_TYPE_X86_GEN, "oggenc2.i386.exe", 287603}, {"693dd6f779df70a047c15c2c79350855db38d5b0cd7e529b6877b7c821cfe6addfdd50a4", CPU_TYPE_X86_SSE, "oggenc2.sse2.exe", 287603}, {"291cedb6a1b213330a9cb508f975ee7132a25aa26770ab91cade50109b4ffb81c9bdd09a", CPU_TYPE_X64_ALL, "oggenc2.x64.exe", 287603}, + {"003b59fedf9f68a4b63402ee60031d878a323d9406dc535e612151170199490878142d85", CPU_TYPE_ALL_ALL, "opusdec.exe", 914}, + {"187deb9e43bfd96a6510e1f27c0894f0e8c8fa00285976039d22364ebe633251a1dbd1f7", CPU_TYPE_ALL_ALL, "opusenc.exe", 914}, {"58c2b8bcff8f27bfa8fab8172b80f5da731221d072c7dba4dd3a3d7d6423490a25dc6760", CPU_TYPE_ALL_ALL, "shorten.exe", 361}, {"017a0f613a962af0620618019b015d5c54bb3c07cf1023e5fdb9502b652367ebbfaaebbc", CPU_TYPE_ALL_ALL, "sox.exe", 1440}, {"48e7f81c024cd17dac0eaeab253aad6b223e72dc80688f7576276b0563209514ff0bb9c8", CPU_TYPE_ALL_ALL, "speexdec.exe", 12},