1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-22 15:20:15 +02:00

Use two formats to reduce number of strings in generated audacity.pot

This commit is contained in:
Paul Licameli 2020-04-05 07:15:22 -04:00
parent b4d6595ff9
commit 31ec92b80a
3 changed files with 100 additions and 94 deletions

View File

@ -145,27 +145,29 @@ static const wxChar *FFmpegExportCtrlIDNames[] = {
namespace namespace
{ {
// i18n-hint kbps abbreviates "thousands of bits per second"
inline TranslatableString n_kbps(int n) { return XO("%d kbps").Format( n ); }
const TranslatableStrings AC3BitRateNames{ const TranslatableStrings AC3BitRateNames{
// i18n-hint kbps abbreviates "thousands of bits per second" n_kbps( 32 ),
XO("32 kbps"), n_kbps( 40 ),
XO("40 kbps"), n_kbps( 48 ),
XO("48 kbps"), n_kbps( 56 ),
XO("56 kbps"), n_kbps( 64 ),
XO("64 kbps"), n_kbps( 80 ),
XO("80 kbps"), n_kbps( 96 ),
XO("96 kbps"), n_kbps( 112 ),
XO("112 kbps"), n_kbps( 128 ),
XO("128 kbps"), n_kbps( 160 ),
XO("160 kbps"), n_kbps( 192 ),
XO("192 kbps"), n_kbps( 224 ),
XO("224 kbps"), n_kbps( 256 ),
XO("256 kbps"), n_kbps( 320 ),
XO("320 kbps"), n_kbps( 384 ),
XO("384 kbps"), n_kbps( 448 ),
XO("448 kbps"), n_kbps( 512 ),
XO("512 kbps"), n_kbps( 576 ),
XO("576 kbps"), n_kbps( 640 ),
XO("640 kbps"),
}; };
const std::vector< int > AC3BitRateValues{ const std::vector< int > AC3BitRateValues{
@ -318,19 +320,21 @@ bool ExportFFmpegAACOptions::TransferDataFromWindow()
namespace { namespace {
// i18n-hint kbps abbreviates "thousands of bits per second"
inline TranslatableString f_kbps( double d ) { return XO("%.2f kbps").Format( d ); }
/// Bit Rates supported by libAMR-NB encoder /// Bit Rates supported by libAMR-NB encoder
/// Sample Rate is always 8 kHz /// Sample Rate is always 8 kHz
const TranslatableStrings AMRNBBitRateNames const TranslatableStrings AMRNBBitRateNames
{ {
// i18n-hint kbps abbreviates "thousands of bits per second" f_kbps( 4.75 ),
XO("4.75 kbps"), f_kbps( 5.15 ),
XO("5.15 kbps"), f_kbps( 5.90 ),
XO("5.90 kbps"), f_kbps( 6.70 ),
XO("6.70 kbps"), f_kbps( 7.40 ),
XO("7.40 kbps"), f_kbps( 7.95 ),
XO("7.95 kbps"), f_kbps( 10.20 ),
XO("10.20 kbps"), f_kbps( 12.20 ),
XO("12.20 kbps"),
}; };
const std::vector< int > AMRNBBitRateValues const std::vector< int > AMRNBBitRateValues
@ -421,21 +425,20 @@ namespace {
{ {
ByColumns, ByColumns,
{ {
// i18n-hint kbps abbreviates "thousands of bits per second" n_kbps( 6 ),
XO("6 kbps"), n_kbps( 8 ),
XO("8 kbps"), n_kbps( 16 ),
XO("16 kbps"), n_kbps( 24 ),
XO("24 kbps"), n_kbps( 32 ),
XO("32 kbps"), n_kbps( 40 ),
XO("40 kbps"), n_kbps( 48 ),
XO("48 kbps"), n_kbps( 64 ),
XO("64 kbps"), n_kbps( 80 ),
XO("80 kbps"), n_kbps( 96 ),
XO("96 kbps"), n_kbps( 128 ),
XO("128 kbps"), n_kbps( 160 ),
XO("160 kbps"), n_kbps( 192 ),
XO("192 kbps"), n_kbps( 256 ),
XO("256 kbps"),
}, },
{ {
wxT("6000"), wxT("6000"),
@ -679,19 +682,18 @@ namespace {
/// Bit Rates supported by WMA encoder. Setting bit rate to other values will not result in different file size. /// Bit Rates supported by WMA encoder. Setting bit rate to other values will not result in different file size.
const TranslatableStrings WMABitRateNames const TranslatableStrings WMABitRateNames
{ {
// i18n-hint kbps abbreviates "thousands of bits per second" n_kbps(24),
XO("24 kbps"), n_kbps(32),
XO("32 kbps"), n_kbps(40),
XO("40 kbps"), n_kbps(48),
XO("48 kbps"), n_kbps(64),
XO("64 kbps"), n_kbps(80),
XO("80 kbps"), n_kbps(96),
XO("96 kbps"), n_kbps(128),
XO("128 kbps"), n_kbps(160),
XO("160 kbps"), n_kbps(192),
XO("192 kbps"), n_kbps(256),
XO("256 kbps"), n_kbps(320),
XO("320 kbps"),
}; };
const std::vector< int > WMABitRateValues{ const std::vector< int > WMABitRateValues{

View File

@ -77,25 +77,27 @@
namespace { namespace {
// i18n-hint kbps abbreviates "thousands of bits per second"
inline TranslatableString n_kbps( int n ) { return XO("%d kpbs").Format( n ); }
const TranslatableStrings BitRateNames { const TranslatableStrings BitRateNames {
// i18n-hint kbps abbreviates "thousands of bits per second" n_kbps(16),
XO("16 kbps"), n_kbps(24),
XO("24 kbps"), n_kbps(32),
XO("32 kbps"), n_kbps(40),
XO("40 kbps"), n_kbps(48),
XO("48 kbps"), n_kbps(56),
XO("56 kbps"), n_kbps(64),
XO("64 kbps"), n_kbps(80),
XO("80 kbps"), n_kbps(96),
XO("96 kbps"), n_kbps(112),
XO("112 kbps"), n_kbps(128),
XO("128 kbps"), n_kbps(160),
XO("160 kbps"), n_kbps(192),
XO("192 kbps"), n_kbps(224),
XO("224 kbps"), n_kbps(256),
XO("256 kbps"), n_kbps(320),
XO("320 kbps"), n_kbps(384),
XO("384 kbps"),
}; };
const std::vector< int > BitRateValues { const std::vector< int > BitRateValues {

View File

@ -124,26 +124,28 @@ enum : int {
PRESET_MEDIUM = 3, PRESET_MEDIUM = 3,
}; };
/* i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second*/
inline TranslatableString n_kbps( int n ){ return XO("%d kbps").Format( n ); }
static const TranslatableStrings fixRateNames { static const TranslatableStrings fixRateNames {
/* i18n-hint: kbps is the bitrate of the MP3 file, kilobits per second*/ n_kbps(320),
XO("320 kbps"), n_kbps(256),
XO("256 kbps"), n_kbps(224),
XO("224 kbps"), n_kbps(192),
XO("192 kbps"), n_kbps(160),
XO("160 kbps"), n_kbps(144),
XO("144 kbps"), n_kbps(128),
XO("128 kbps"), n_kbps(112),
XO("112 kbps"), n_kbps(96),
XO("96 kbps"), n_kbps(80),
XO("80 kbps"), n_kbps(64),
XO("64 kbps"), n_kbps(56),
XO("56 kbps"), n_kbps(48),
XO("48 kbps"), n_kbps(40),
XO("40 kbps"), n_kbps(32),
XO("32 kbps"), n_kbps(24),
XO("24 kbps"), n_kbps(16),
XO("16 kbps"), n_kbps(8),
XO("8 kbps"),
}; };
static const std::vector<int> fixRateValues { static const std::vector<int> fixRateValues {