diff options
author | Robert Adam <dev@robert-adam.de> | 2021-09-03 10:49:54 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-03 10:49:54 +0300 |
commit | b47e71299afe9c15110adce62eb546c3b89c6292 (patch) | |
tree | 74c100d07cb3ec5ebbf0b6774c08db854ac90c40 | |
parent | 207dbe0d8adffb24b807a7f1d39165a81e59785e (diff) | |
parent | 82fe478a156afd0c7f5c0b15db605c3a1156a379 (diff) |
Merge PR #5251: FEAT(client): Add opus as output format for recording
This commits adds opus as an output format for voice recordings as requested in #5065. It uses an OGG container like the already implemented Vorbis codec but has much better compression. For clarity the .opus file extension is used.
Fixes #5065
46 files changed, 207 insertions, 4 deletions
diff --git a/src/mumble/CMakeLists.txt b/src/mumble/CMakeLists.txt index 57de9ffe0..de2b1a59f 100644 --- a/src/mumble/CMakeLists.txt +++ b/src/mumble/CMakeLists.txt @@ -451,6 +451,13 @@ endif() find_pkg("SndFile;LibSndFile;sndfile" REQUIRED) +# Check if sndfile version supports opus +if("${sndfile_VERSION}" VERSION_GREATER_EQUAL "1.0.29") + target_compile_definitions(mumble PRIVATE USE_SNDFILE_OPUS) +else() + message(WARNING "libsnfile is missing Opus-support -> No Opus-format recording") +endif() + # Look for various targets as they are named differently on different platforms if(static AND TARGET sndfile-static) target_link_libraries(mumble PRIVATE sndfile-static) diff --git a/src/mumble/VoiceRecorder.cpp b/src/mumble/VoiceRecorder.cpp index bba6bf34b..189b173f2 100644 --- a/src/mumble/VoiceRecorder.cpp +++ b/src/mumble/VoiceRecorder.cpp @@ -212,6 +212,18 @@ SF_INFO VoiceRecorder::createSoundFileInfo() const { qWarning() << "VoiceRecorder: recording started to" << m_config.fileName << "@" << m_config.sampleRate << "hz in FLAC format"; break; +#ifdef USE_SNDFILE_OPUS + case VoiceRecorderFormat::OPUS: + sfinfo.frames = 0; + sfinfo.samplerate = m_config.sampleRate; + sfinfo.channels = 1; + sfinfo.format = SF_FORMAT_OGG | SF_FORMAT_OPUS; + sfinfo.sections = 0; + sfinfo.seekable = 0; + qWarning() << "VoiceRecorder: recording started to" << m_config.fileName << "@" << m_config.sampleRate + << "hz in OPUS format"; + break; +#endif } Q_ASSERT(sf_format_check(&sfinfo)); @@ -429,6 +441,10 @@ QString VoiceRecorderFormat::getFormatDescription(VoiceRecorderFormat::Format fm return VoiceRecorder::tr(".au - Uncompressed"); case VoiceRecorderFormat::FLAC: return VoiceRecorder::tr(".flac - Lossless compressed"); +#ifdef USE_SNDFILE_OPUS + case VoiceRecorderFormat::OPUS: + return VoiceRecorder::tr(".opus - Lossy compressed"); +#endif default: return QString(); } @@ -446,6 +462,10 @@ QString VoiceRecorderFormat::getFormatDefaultExtension(VoiceRecorderFormat::Form return QLatin1String("au"); case VoiceRecorderFormat::FLAC: return QLatin1String("flac"); +#ifdef USE_SNDFILE_OPUS + case VoiceRecorderFormat::OPUS: + return QLatin1String("opus"); +#endif default: return QString(); } diff --git a/src/mumble/VoiceRecorder.h b/src/mumble/VoiceRecorder.h index 97c6e0c90..886f02a27 100644 --- a/src/mumble/VoiceRecorder.h +++ b/src/mumble/VoiceRecorder.h @@ -51,6 +51,10 @@ enum Format { AU, /// FLAC Format FLAC, +#ifdef USE_SNDFILE_OPUS + // OPUS Format + OPUS, +#endif kEnd }; diff --git a/src/mumble/mumble_ar.ts b/src/mumble/mumble_ar.ts index 42244bec8..a4b5943f0 100644 --- a/src/mumble/mumble_ar.ts +++ b/src/mumble/mumble_ar.ts @@ -8700,6 +8700,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_bg.ts b/src/mumble/mumble_bg.ts index 6204872fe..fd032aefa 100644 --- a/src/mumble/mumble_bg.ts +++ b/src/mumble/mumble_bg.ts @@ -8693,6 +8693,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_br.ts b/src/mumble/mumble_br.ts index ca6a26c3b..8d8942486 100644 --- a/src/mumble/mumble_br.ts +++ b/src/mumble/mumble_br.ts @@ -8692,6 +8692,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_ca.ts b/src/mumble/mumble_ca.ts index 6f5124791..3fcbf0328 100644 --- a/src/mumble/mumble_ca.ts +++ b/src/mumble/mumble_ca.ts @@ -8698,6 +8698,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_cs.ts b/src/mumble/mumble_cs.ts index 2105465a1..137035598 100644 --- a/src/mumble/mumble_cs.ts +++ b/src/mumble/mumble_cs.ts @@ -8760,6 +8760,10 @@ Znak přístupu je textový řetězec, který může být použit jako heslo pro <source>.flac - Lossless compressed</source> <translation>.flac - Komprimováno bezeztrátově</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_cy.ts b/src/mumble/mumble_cy.ts index 48d488a8e..fb90cb35b 100644 --- a/src/mumble/mumble_cy.ts +++ b/src/mumble/mumble_cy.ts @@ -8699,6 +8699,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation>.flac - Cywasgu heb golled</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_da.ts b/src/mumble/mumble_da.ts index ce3889f72..13895093b 100644 --- a/src/mumble/mumble_da.ts +++ b/src/mumble/mumble_da.ts @@ -8754,6 +8754,10 @@ Et adgangsudtryk er en tekststreng, der kan bruges som en adgangskode for meget <source>.flac - Lossless compressed</source> <translation>.flac - Tabsfri komprimeret</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_de.ts b/src/mumble/mumble_de.ts index 86cedbdcc..94468778a 100644 --- a/src/mumble/mumble_de.ts +++ b/src/mumble/mumble_de.ts @@ -8852,6 +8852,10 @@ Ein Zugriffscode ist eine Zeichenfolge, die als Passwort für ein sehr einfaches <source>.flac - Lossless compressed</source> <translation>.flac - Verlustfrei komprimiert</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_el.ts b/src/mumble/mumble_el.ts index 758ec6f31..f916a5032 100644 --- a/src/mumble/mumble_el.ts +++ b/src/mumble/mumble_el.ts @@ -8766,6 +8766,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation>.flac - Συμπιεσμένο χωρίς απώλειες</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_en.ts b/src/mumble/mumble_en.ts index 845b25ef5..9ecd66169 100644 --- a/src/mumble/mumble_en.ts +++ b/src/mumble/mumble_en.ts @@ -8690,6 +8690,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_en_GB.ts b/src/mumble/mumble_en_GB.ts index adf8cf35f..fd06d2636 100644 --- a/src/mumble/mumble_en_GB.ts +++ b/src/mumble/mumble_en_GB.ts @@ -8731,6 +8731,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_eo.ts b/src/mumble/mumble_eo.ts index caecbe930..e322a2484 100644 --- a/src/mumble/mumble_eo.ts +++ b/src/mumble/mumble_eo.ts @@ -1120,15 +1120,15 @@ This value allows you to set the maximum number of users allowed in the channel. </message> <message> <source>Audio per packet</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Sono en paketo</translation> </message> <message> <source>Quality of compression (peak bandwidth)</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Kvalito de densigo (maksimuma kapacito)</translation> </message> <message> <source>Noise suppression</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Forigo de bruo</translation> </message> <message> <source>Maximum amplification</source> @@ -1731,7 +1731,7 @@ This value allows you to set the maximum number of users allowed in the channel. </message> <message> <source>Input method for audio</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Eniga metodo por sono</translation> </message> <message> <source>Device</source> @@ -8703,6 +8703,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_es.ts b/src/mumble/mumble_es.ts index 74142ab2d..875e3462e 100644 --- a/src/mumble/mumble_es.ts +++ b/src/mumble/mumble_es.ts @@ -8771,6 +8771,10 @@ Una credencial de acceso es una cadena de texto que puede ser usada como contras <source>.flac - Lossless compressed</source> <translation>.flac - Comprimido sin pérdidas</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_et.ts b/src/mumble/mumble_et.ts index 27e4f9505..f40ea519c 100644 --- a/src/mumble/mumble_et.ts +++ b/src/mumble/mumble_et.ts @@ -8693,6 +8693,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_eu.ts b/src/mumble/mumble_eu.ts index 3587dae03..8bb70c645 100644 --- a/src/mumble/mumble_eu.ts +++ b/src/mumble/mumble_eu.ts @@ -8712,6 +8712,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation>.flac - Galera gabe konprimitua</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_fa_IR.ts b/src/mumble/mumble_fa_IR.ts index eb929d5d2..d3111779e 100644 --- a/src/mumble/mumble_fa_IR.ts +++ b/src/mumble/mumble_fa_IR.ts @@ -8690,6 +8690,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_fi.ts b/src/mumble/mumble_fi.ts index c71072dcf..f3465565a 100644 --- a/src/mumble/mumble_fi.ts +++ b/src/mumble/mumble_fi.ts @@ -8814,6 +8814,10 @@ Pääsypoletti on merkkijonoketju, jota voidaan käyttää salasanana yksinkerta <source>.flac - Lossless compressed</source> <translation>.flac - Häviöttömästi pakattu</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_fr.ts b/src/mumble/mumble_fr.ts index 5d3dae9e6..e5a3d7b84 100644 --- a/src/mumble/mumble_fr.ts +++ b/src/mumble/mumble_fr.ts @@ -8771,6 +8771,10 @@ Un jeton d'accès est une chaîne de caractères qui peut être utilisée c <source>.flac - Lossless compressed</source> <translation>.flac - Compressé sans perte</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_gl.ts b/src/mumble/mumble_gl.ts index 9eb828097..0df246285 100644 --- a/src/mumble/mumble_gl.ts +++ b/src/mumble/mumble_gl.ts @@ -8694,6 +8694,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_he.ts b/src/mumble/mumble_he.ts index e9355ddbd..7a30f1b04 100644 --- a/src/mumble/mumble_he.ts +++ b/src/mumble/mumble_he.ts @@ -8751,6 +8751,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation>.flac - דחיסה משמרת איכות</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_hu.ts b/src/mumble/mumble_hu.ts index fd24ad386..34e096d6f 100644 --- a/src/mumble/mumble_hu.ts +++ b/src/mumble/mumble_hu.ts @@ -8747,6 +8747,10 @@ A kulcs egy szöveges karaktersorozat, amely jelszóként használható a csator <source>.flac - Lossless compressed</source> <translation>.flac - veszteségmentes</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_it.ts b/src/mumble/mumble_it.ts index 2fe96347a..c39e5b75b 100644 --- a/src/mumble/mumble_it.ts +++ b/src/mumble/mumble_it.ts @@ -8855,6 +8855,10 @@ Un token di accesso è una stringa di testo, che può essere usata come password <source>.flac - Lossless compressed</source> <translation>.flac - Compresso senza perdite</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_ja.ts b/src/mumble/mumble_ja.ts index 17d97d91f..acb248059 100644 --- a/src/mumble/mumble_ja.ts +++ b/src/mumble/mumble_ja.ts @@ -8747,6 +8747,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation>.flac - ロスレス圧縮</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_ko.ts b/src/mumble/mumble_ko.ts index 0ccc5b311..2e18d7e18 100644 --- a/src/mumble/mumble_ko.ts +++ b/src/mumble/mumble_ko.ts @@ -8853,6 +8853,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation>.flac - 무손실 압축</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_lt.ts b/src/mumble/mumble_lt.ts index 15e77a3cb..f635498af 100644 --- a/src/mumble/mumble_lt.ts +++ b/src/mumble/mumble_lt.ts @@ -8793,6 +8793,10 @@ Prieigos raktas yra tekstinė eilutė, kuri gali būti naudojama kaip slaptažod <source>.flac - Lossless compressed</source> <translation>.flac - Nenuostolingasis suglaudintas</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_nl.ts b/src/mumble/mumble_nl.ts index fa6576160..916390222 100644 --- a/src/mumble/mumble_nl.ts +++ b/src/mumble/mumble_nl.ts @@ -8856,6 +8856,10 @@ Een toegangssleutel is een tekenreeks die gebruikt kan worden als wachtwoord om <source>.flac - Lossless compressed</source> <translation>.flac - Zonder verlies gecomprimeerd</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_no.ts b/src/mumble/mumble_no.ts index eb5fbf7de..a11843a1d 100644 --- a/src/mumble/mumble_no.ts +++ b/src/mumble/mumble_no.ts @@ -8785,6 +8785,10 @@ Et tilgangssymbol er en tekststring, som kan brukes som et passord for veldig en <source>.flac - Lossless compressed</source> <translation>.flac - Tapsfritt komprimert</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_oc.ts b/src/mumble/mumble_oc.ts index dc4f941de..9a6b08f32 100644 --- a/src/mumble/mumble_oc.ts +++ b/src/mumble/mumble_oc.ts @@ -8693,6 +8693,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_pl.ts b/src/mumble/mumble_pl.ts index c3749c957..60d7f3bca 100644 --- a/src/mumble/mumble_pl.ts +++ b/src/mumble/mumble_pl.ts @@ -8858,6 +8858,10 @@ Token dostępu to ciąg tekstowy, który może służyć jako hasło do bardzo p <source>.flac - Lossless compressed</source> <translation>.flac - Bezstratna kompresja</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_pt_BR.ts b/src/mumble/mumble_pt_BR.ts index bd64881e2..edc221d7e 100644 --- a/src/mumble/mumble_pt_BR.ts +++ b/src/mumble/mumble_pt_BR.ts @@ -8773,6 +8773,10 @@ Uma credencial de acesso é uma cadeia de caracteres de texto, que podem ser usa <source>.flac - Lossless compressed</source> <translation>.flac - Comprimido sem perdas</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_pt_PT.ts b/src/mumble/mumble_pt_PT.ts index f31ce24a4..2b196df2f 100644 --- a/src/mumble/mumble_pt_PT.ts +++ b/src/mumble/mumble_pt_PT.ts @@ -8773,6 +8773,10 @@ Uma credencial de acesso é uma sequência de texto, que pode ser usada como uma <source>.flac - Lossless compressed</source> <translation>.flac - Comprimido sem perdas</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_ro.ts b/src/mumble/mumble_ro.ts index 97d1387ea..06f23905e 100644 --- a/src/mumble/mumble_ro.ts +++ b/src/mumble/mumble_ro.ts @@ -8698,6 +8698,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_ru.ts b/src/mumble/mumble_ru.ts index 4cd7b5278..ea82a20ee 100644 --- a/src/mumble/mumble_ru.ts +++ b/src/mumble/mumble_ru.ts @@ -8809,6 +8809,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation>.flac - Сжатый без потерь</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_si.ts b/src/mumble/mumble_si.ts index 91b0f82fb..f593532b0 100644 --- a/src/mumble/mumble_si.ts +++ b/src/mumble/mumble_si.ts @@ -8647,6 +8647,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_sq.ts b/src/mumble/mumble_sq.ts index c42366e5c..09823516b 100644 --- a/src/mumble/mumble_sq.ts +++ b/src/mumble/mumble_sq.ts @@ -8647,6 +8647,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_sv.ts b/src/mumble/mumble_sv.ts index 08a46a0c3..59ffd324c 100644 --- a/src/mumble/mumble_sv.ts +++ b/src/mumble/mumble_sv.ts @@ -8796,6 +8796,10 @@ En token är en textsträng, som kan användas som ett lösenord för enkel till <source>.flac - Lossless compressed</source> <translation>.flac - Förlustfritt komprimerad</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_te.ts b/src/mumble/mumble_te.ts index 404285923..6a6da04f5 100644 --- a/src/mumble/mumble_te.ts +++ b/src/mumble/mumble_te.ts @@ -8710,6 +8710,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_th.ts b/src/mumble/mumble_th.ts index 38830e924..672dc8fb7 100644 --- a/src/mumble/mumble_th.ts +++ b/src/mumble/mumble_th.ts @@ -8690,6 +8690,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_tr.ts b/src/mumble/mumble_tr.ts index 27614bdd3..c36a2c007 100644 --- a/src/mumble/mumble_tr.ts +++ b/src/mumble/mumble_tr.ts @@ -8854,6 +8854,10 @@ Erişim jetonu bir metindir ve kanallara erişimin çok basit bir şekilde yöne <source>.flac - Lossless compressed</source> <translation>.flac - Kayıpsız olarak sıkıştırılmış</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_uk.ts b/src/mumble/mumble_uk.ts index b0c772768..870bf97be 100644 --- a/src/mumble/mumble_uk.ts +++ b/src/mumble/mumble_uk.ts @@ -8694,6 +8694,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation type="unfinished"></translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_zh_CN.ts b/src/mumble/mumble_zh_CN.ts index 658046688..9d3552839 100644 --- a/src/mumble/mumble_zh_CN.ts +++ b/src/mumble/mumble_zh_CN.ts @@ -8845,6 +8845,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation>.flac - 无损压缩</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_zh_HK.ts b/src/mumble/mumble_zh_HK.ts index dcac44fbf..4f5a8ed84 100644 --- a/src/mumble/mumble_zh_HK.ts +++ b/src/mumble/mumble_zh_HK.ts @@ -8701,6 +8701,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation>.flac - 無損壓縮</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> diff --git a/src/mumble/mumble_zh_TW.ts b/src/mumble/mumble_zh_TW.ts index 4adffeaff..3785cbeba 100644 --- a/src/mumble/mumble_zh_TW.ts +++ b/src/mumble/mumble_zh_TW.ts @@ -8721,6 +8721,10 @@ An access token is a text string, which can be used as a password for very simpl <source>.flac - Lossless compressed</source> <translation>.flac - 無損壓縮</translation> </message> + <message> + <source>.opus - Lossy compressed</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>VoiceRecorderDialog</name> |