feat: Support selection of Hebrew audio pack (#3511)

* support hebrew audio selection

* support hebrew audio selection

* support hebrew audio selection

* support hebrew audio selection

* support hebrew audio selection
This commit is contained in:
Offer Shmuely
2023-05-11 10:40:53 +10:00
committed by GitHub
parent 0ef4199632
commit e9750a6f91
18 changed files with 151 additions and 1 deletions
+1 -1
View File
@@ -3,7 +3,7 @@ include(Bitmaps)
set(PCB_TYPES X9LITE X9LITES X7 XLITE XLITES X9D X9D+ X9E X10 X12S NV14)
set(RADIO_LANGUAGES CN CZ DA DE EN ES FI FR IT JP PT SK SE PL HU NL TW)
set(TTS_LANGUAGES CN CZ DA DE EN ES FR IT JP PT SK SE PL HU NL RU)
set(TTS_LANGUAGES CN CZ DA DE EN ES FR HE IT JP PT SK SE PL HU NL RU)
set(PCB "X9D+" CACHE STRING "Radio type, one of: ${PCB_TYPES}")
set_property(CACHE PCB PROPERTY STRINGS ${PCB_TYPES})
+2
View File
@@ -848,6 +848,7 @@ extern const LanguagePack seLanguagePack;
extern const LanguagePack skLanguagePack;
extern const LanguagePack cnLanguagePack;
extern const LanguagePack jpLanguagePack;
extern const LanguagePack heLanguagePack;
extern const LanguagePack * const languagePacks[];
#if defined(LANGUAGE_PACKS_DEFINITION)
@@ -860,6 +861,7 @@ const LanguagePack * const languagePacks[] = {
&enLanguagePack,
&esLanguagePack,
&frLanguagePack,
&heLanguagePack,
&huLanguagePack,
&itLanguagePack,
&jpLanguagePack,
+1
View File
@@ -1253,6 +1253,7 @@
#define TR_VOICE_SWEDISH "瑞典语"
#define TR_VOICE_TAIWANESE "中文-台湾国语"
#define TR_VOICE_JAPANESE "日文"
#define TR_VOICE_HEBREW "希伯来语"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1255,6 +1255,7 @@
#define TR_VOICE_SWEDISH "Švédština"
#define TR_VOICE_TAIWANESE "Tchajwanština"
#define TR_VOICE_JAPANESE "Japonština"
#define TR_VOICE_HEBREW "Hebrejština"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1268,6 +1268,7 @@
#define TR_VOICE_SWEDISH "Svensk"
#define TR_VOICE_TAIWANESE "Taiwanesisk"
#define TR_VOICE_JAPANESE "Japansk"
#define TR_VOICE_HEBREW "Hebraisk"
#define TR_USBJOYSTICK_LABEL "USB joystik"
#define TR_USBJOYSTICK_EXTMODE "Tilstand"
+1
View File
@@ -1254,6 +1254,7 @@
#define TR_VOICE_SWEDISH "Schwedisch"
#define TR_VOICE_TAIWANESE "Taiwanese"
#define TR_VOICE_JAPANESE "Japanisch"
#define TR_VOICE_HEBREW "Hebräisch"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1247,6 +1247,7 @@
#define TR_VOICE_SWEDISH "Swedish"
#define TR_VOICE_TAIWANESE "Taiwanese"
#define TR_VOICE_JAPANESE "Japanese"
#define TR_VOICE_HEBREW "Hebrew"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1258,6 +1258,7 @@
#define TR_VOICE_SWEDISH "Swedish"
#define TR_VOICE_TAIWANESE "Taiwanese"
#define TR_VOICE_JAPANESE "Japanese"
#define TR_VOICE_HEBREW "Hebreo"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1271,6 +1271,7 @@
#define TR_VOICE_SWEDISH "Swedish"
#define TR_VOICE_TAIWANESE "Taiwanese"
#define TR_VOICE_JAPANESE "Japanese"
#define TR_VOICE_HEBREW "Heprealainen"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1275,6 +1275,7 @@
#define TR_VOICE_SWEDISH "Swedish"
#define TR_VOICE_TAIWANESE "Taiwanese"
#define TR_VOICE_JAPANESE "Japanese"
#define TR_VOICE_HEBREW "Hébreu"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1252,6 +1252,7 @@
#define TR_VOICE_SWEDISH "Svedese"
#define TR_VOICE_TAIWANESE "Taiwanese"
#define TR_VOICE_JAPANESE "Giapponese"
#define TR_VOICE_HEBREW "Ebraico"
#define TR_USBJOYSTICK_LABEL "Joystick USB"
#define TR_USBJOYSTICK_EXTMODE "Modo"
+1
View File
@@ -1248,6 +1248,7 @@
#define TR_VOICE_SWEDISH "スウェーデン-SV"
#define TR_VOICE_TAIWANESE "中文-TW"
#define TR_VOICE_JAPANESE "日本-JP"
#define TR_VOICE_HEBREW "ヘブライ語"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1268,6 +1268,7 @@
#define TR_VOICE_SWEDISH "Swedish"
#define TR_VOICE_TAIWANESE "Taiwanese"
#define TR_VOICE_JAPANESE "Japanese"
#define TR_VOICE_HEBREW "Hebreeuws"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1252,6 +1252,7 @@
#define TR_VOICE_SWEDISH "Szwedzki"
#define TR_VOICE_TAIWANESE "Tajwański"
#define TR_VOICE_JAPANESE "Japonês"
#define TR_VOICE_HEBREW "Hebrajski"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1261,6 +1261,7 @@
#define TR_VOICE_SWEDISH "Swedish"
#define TR_VOICE_TAIWANESE "Taiwanese"
#define TR_VOICE_JAPANESE "Japanese"
#define TR_VOICE_HEBREW "Hebraico"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"
+1
View File
@@ -1292,6 +1292,7 @@
#define TR_VOICE_SWEDISH "Svenska"
#define TR_VOICE_TAIWANESE "Taiwanesiska"
#define TR_VOICE_JAPANESE "Japanska"
#define TR_VOICE_HEBREW "Hebreiska"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Läge"
+133
View File
@@ -0,0 +1,133 @@
/*
* Copyright (C) EdgeTX
*
* Based on code named
* opentx - https://github.com/opentx/opentx
* th9x - http://code.google.com/p/th9x
* er9x - http://code.google.com/p/er9x
* gruvin9x - http://code.google.com/p/gruvin9x
*
* License GPLv2: http://www.gnu.org/licenses/gpl-2.0.html
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* 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.
*/
#include "opentx.h"
enum HebrewPrompts {
HE_PROMPT_NUMBERS_BASE = 0,
HE_PROMPT_ZERO = HE_PROMPT_NUMBERS_BASE+0, //02-99
HE_PROMPT_HUNDRED = HE_PROMPT_NUMBERS_BASE+100, //100,200 .. 900
HE_PROMPT_THOUSAND = HE_PROMPT_NUMBERS_BASE+109, //1000
HE_PROMPT_AND = HE_PROMPT_NUMBERS_BASE+110,
HE_PROMPT_MINUS = HE_PROMPT_NUMBERS_BASE+111,
HE_PROMPT_POINT = HE_PROMPT_NUMBERS_BASE+112,
HE_PROMPT_UNITS_BASE = 113,
HE_PROMPT_POINT_BASE = 167, //.0 - .9
};
#define HE_PUSH_UNIT_PROMPT(u, p) he_pushUnitPrompt((u), (p), id)
I18N_PLAY_FUNCTION(he, pushUnitPrompt, uint8_t unitprompt, int16_t number)
{
if (number == 1)
PUSH_UNIT_PROMPT(unitprompt, 0);
else
PUSH_UNIT_PROMPT(unitprompt, 1);
}
I18N_PLAY_FUNCTION(he, playNumber, getvalue_t number, uint8_t unit, uint8_t att)
{
if (number < 0) {
PUSH_NUMBER_PROMPT(HE_PROMPT_MINUS);
number = -number;
}
int8_t mode = MODE(att);
if (mode > 0) {
if (mode == 2) {
number /= 10;
}
div_t qr = div((int)number, 10);
if (qr.rem) {
PLAY_NUMBER(qr.quot, 0, 0);
PUSH_NUMBER_PROMPT(HE_PROMPT_POINT_BASE + qr.rem);
number = -1;
}
else {
number = qr.quot;
}
}
int16_t tmp = number;
if (number >= 1000) {
PLAY_NUMBER(number / 1000, 0, 0);
PUSH_NUMBER_PROMPT(HE_PROMPT_THOUSAND);
number %= 1000;
if (number == 0)
number = -1;
}
if (number >= 100) {
PUSH_NUMBER_PROMPT(HE_PROMPT_HUNDRED + (number/100)-1);
number %= 100;
if (number == 0)
number = -1;
}
if (number >= 0) {
PUSH_NUMBER_PROMPT(HE_PROMPT_ZERO + number);
}
if (unit) {
HE_PUSH_UNIT_PROMPT(unit, tmp);
}
}
I18N_PLAY_FUNCTION(he, playDuration, int seconds PLAY_DURATION_ATT)
{
if (seconds == 0) {
PLAY_NUMBER(seconds, 0, 0);
return;
}
if (seconds < 0) {
PUSH_NUMBER_PROMPT(HE_PROMPT_MINUS);
seconds = -seconds;
}
int hours, minutes;
hours = seconds / 3600;
seconds = seconds % 3600;
minutes = seconds / 60;
seconds = seconds % 60;
if (IS_PLAY_LONG_TIMER() && seconds >= 30) {
minutes += 1;
}
if (hours > 0 || IS_PLAY_TIME()) {
PLAY_NUMBER(hours, UNIT_HOURS, 0);
}
if (minutes > 0) {
PLAY_NUMBER(minutes, UNIT_MINUTES, 0);
}
if (!IS_PLAY_LONG_TIMER() && seconds > 0) {
if (minutes)
PUSH_NUMBER_PROMPT(HE_PROMPT_AND);
PLAY_NUMBER(seconds, UNIT_SECONDS, 0);
}
}
LANGUAGE_PACK_DECLARE(he, TR_VOICE_HEBREW);
+1
View File
@@ -1251,6 +1251,7 @@
#define TR_VOICE_SWEDISH "瑞典語"
#define TR_VOICE_TAIWANESE "中文-台灣國語"
#define TR_VOICE_JAPANESE "日文"
#define TR_VOICE_HEBREW "希伯來語"
#define TR_USBJOYSTICK_LABEL "USB Joystick"
#define TR_USBJOYSTICK_EXTMODE "Mode"