diff --git a/Help/bugs.html b/Help/community.html similarity index 91% rename from Help/bugs.html rename to Help/community.html index b2001d60..078864f6 100644 --- a/Help/bugs.html +++ b/Help/community.html @@ -6,8 +6,8 @@ -

Would you like help?

-

+

Would you like help?

+

There is a WhatsApp community for Chirpity Users. You can can share issues, suggest new features and discuss species IDs using the group chats there. If you would like to join the community just press this button to be taken to the WhatsApp invite page:

diff --git a/Help/keyboard.html b/Help/keyboard.html index d47497ab..1fb59328 100644 --- a/Help/keyboard.html +++ b/Help/keyboard.html @@ -8,134 +8,134 @@ - + - + - - + - - - + - + - + - + - + - - + - + - + - + - + - + - + - + - + - + - - - - - + - + - + - + - +
File handling
File handling
Ctrl + OShow file open dialogShow file open dialog
Ctrl + SSave detections to the records archive. + Save detections to the records archive.
Analysis
Analysis
Ctrl + AAnalyse the current file. + Analyse the current file.
Shift + Ctrl + AAnalyse all open files. + Analyse all open files.
EscStop analysisStop analysis
Ctrl + TabToggle between exploring the archive and the latest analysis results. This allows you to compare current detections with those you've previously recorded.Toggle between exploring the archive and the latest analysis results. This allows you to compare current detections with those you've previously recorded.
Navigating Audio
SpaceBarToggle Play/Pause the audioToggle Play/Pause the audio
PPlay the selected region. Only active if a region has been selected.Play the selected region. Only active if a region has been selected.
Ctrl + CCentre the spectrogram at the current playhead position. Also, if you double-click the mouse at a point in the audio, + Centre the spectrogram at the current playhead position. Also, if you double-click the mouse at a point in the audio, it will centre the spectrogram at that point
Ctrl + GGo to position in fileGo to position in file
Home or
Fn + ArrowLeft
Move the playhead to the beginning of the fileMove the playhead to the beginning of the file
End or
Fn + ArrowRight
Move the playhead to the end of the fileMove the playhead to the end of the file
PgUp or
Fn + ArrowUp
Move back to the previous period in the spectrogram. You can also use the mouse wheel or two finger trackpad swipe.Move back to the previous period in the spectrogram. You can also use the mouse wheel or two finger trackpad swipe.
PgDn or
Fn + ArrowDown
Move forward to the next period in the spectrogramMove forward to the next period in the spectrogram
Left arrow (←)Move the playhead forward. Move the playhead forward.
Right arrow (→)Move the playhead backward. Move the playhead backward.
Tab or
Down Arrow (↓)
Skip to the next detectionSkip to the next detection
Shift + Tab or
Up Arrow (↑)
Skip back to the previous detectionSkip back to the previous detection
Spectrogram Adjustments
Spectrogram Adjustments
+Zoom in on the spectrogram. When zooming, Chirpity automatically adjusts the short-time Fourier transform (STFT) window size to optimize + Zoom in on the spectrogram. When zooming, Chirpity automatically adjusts the short-time Fourier transform (STFT) window size to optimize the spectral resolution
-Zoom out the spectrogram. When zooming, Chirpity automatically adjusts the STFT window size to optimize the + Zoom out the spectrogram. When zooming, Chirpity automatically adjusts the STFT window size to optimize the spectral resolution
Ctrl + + or F5Manually reduce the spectrogram window size. Adjusting the window size has the effect of sharpening / blurring the calls in the spectrogram. + Manually reduce the spectrogram window size. Adjusting the window size has the effect of sharpening / blurring the calls in the spectrogram.
Ctrl + - or F4Manually increase the spectrogram window size + Manually increase the spectrogram window size
Ctrl + TToggle between Timecode and Time of DayToggle between Timecode and Time of Day
Records
Records
Delete or BackspaceDelete current recordDelete current record
Ctrl + ZRestore deleted record(s)Restore deleted record(s)
Ctrl + VValidate the current active record (confirm the detection)Validate the current active record (confirm the detection)
diff --git a/I18n/community.ar.json b/I18n/community.ar.json new file mode 100644 index 00000000..73a478e6 --- /dev/null +++ b/I18n/community.ar.json @@ -0,0 +1,12 @@ +{ + "heading": [ + "هل تحتاج إلى مساعدة؟" + ], + "content": [ + "يوجد مجتمع على واتساب لمستخدمي Chirpity. يمكنك مشاركة المشكلات، واقتراح ميزات جديدة، ومناقشة تحديد الأنواع باستخدام الدردشات الجماعية هناك. إذا كنت ترغب في الانضمام إلى المجتمع، فقط اضغط على هذا الزر للانتقال إلى صفحة دعوة واتساب:" + ], + "join-whatsapp": [ + "انضم إلى مجتمع Chirpity على واتساب" + ] + } + \ No newline at end of file diff --git a/I18n/community.da.json b/I18n/community.da.json new file mode 100644 index 00000000..a3583479 --- /dev/null +++ b/I18n/community.da.json @@ -0,0 +1,11 @@ +{ + "heading": [ + "Vil du have hjælp?" + ], + "content": [ + "Der er et WhatsApp-fællesskab for Chirpity-brugere. Du kan dele problemer, foreslå nye funktioner og diskutere artsidentifikationer i gruppechattene. Hvis du gerne vil være en del af fællesskabet, skal du bare trykke på denne knap for at blive sendt til WhatsApp-invitationen:" + ], + "join-whatsapp": [ + "Deltag i Chirpity WhatsApp-fællesskabet" + ] +} diff --git a/I18n/community.en.json b/I18n/community.en.json new file mode 100644 index 00000000..5e04d065 --- /dev/null +++ b/I18n/community.en.json @@ -0,0 +1,11 @@ +{ + "heading": [ + "Would you like help?" + ], + "content": [ + "There is a WhatsApp community for Chirpity Users. You can can share issues, suggest new features and discuss species IDs using the group chats there. If you would like to join the community just press this button to be taken to the WhatsApp invite page:" + ], + "join-whatsapp": [ + "Join the Chirpity WhatsApp community" + ] +} \ No newline at end of file diff --git a/I18n/community.es.json b/I18n/community.es.json new file mode 100644 index 00000000..c5c692cf --- /dev/null +++ b/I18n/community.es.json @@ -0,0 +1,12 @@ +{ + "heading": [ + "¿Te gustaría ayuda?" + ], + "content": [ + "Existe una comunidad de WhatsApp para los usuarios de Chirpity. Puedes compartir problemas, sugerir nuevas funciones y discutir identificaciones de especies en los chats grupales. Si deseas unirte a la comunidad, simplemente presiona este botón para ir a la página de invitación de WhatsApp:" + ], + "join-whatsapp": [ + "Únete a la comunidad de WhatsApp de Chirpity" + ] + } + \ No newline at end of file diff --git a/I18n/community.fr.json b/I18n/community.fr.json new file mode 100644 index 00000000..65cfb5bf --- /dev/null +++ b/I18n/community.fr.json @@ -0,0 +1,12 @@ +{ + "heading": [ + "Souhaitez-vous de l'aide ?" + ], + "content": [ + "Il existe une communauté WhatsApp pour les utilisateurs de Chirpity. Vous pouvez y partager des problèmes, suggérer de nouvelles fonctionnalités et discuter des identifications d'espèces via les discussions de groupe. Si vous souhaitez rejoindre la communauté, appuyez simplement sur ce bouton pour accéder à la page d'invitation WhatsApp :" + ], + "join-whatsapp": [ + "Rejoindre la communauté WhatsApp de Chirpity" + ] + } + \ No newline at end of file diff --git a/I18n/community.nl.json b/I18n/community.nl.json new file mode 100644 index 00000000..22deda4e --- /dev/null +++ b/I18n/community.nl.json @@ -0,0 +1,11 @@ +{ + "heading": [ + "Zou je hulp willen?" + ], + "content": [ + "Er is een WhatsApp-gemeenschap voor Chirpity-gebruikers. Je kunt problemen delen, nieuwe functies voorstellen en soortidentificaties bespreken in de groepsgesprekken. Als je je bij de gemeenschap wilt voegen, druk dan gewoon op deze knop om naar de WhatsApp-uitnodigingspagina te gaan:" + ], + "join-whatsapp": [ + "Word lid van de Chirpity WhatsApp-gemeenschap" + ] +} diff --git a/I18n/community.pt.json b/I18n/community.pt.json new file mode 100644 index 00000000..6095361d --- /dev/null +++ b/I18n/community.pt.json @@ -0,0 +1,11 @@ +{ + "heading": [ + "Você gostaria de ajuda?" + ], + "content": [ + "Existe uma comunidade no WhatsApp para usuários do Chirpity. Você pode compartilhar problemas, sugerir novos recursos e discutir identificações de espécies usando os chats de grupo lá. Se você quiser entrar na comunidade, basta pressionar este botão para ser redirecionado para a página de convite do WhatsApp:" + ], + "join-whatsapp": [ + "Entrar na comunidade do Chirpity no WhatsApp" + ] +} diff --git a/I18n/community.sv.json b/I18n/community.sv.json new file mode 100644 index 00000000..f9d4f5a3 --- /dev/null +++ b/I18n/community.sv.json @@ -0,0 +1,11 @@ +{ + "heading": [ + "Skulle du vilja ha hjälp?" + ], + "content": [ + "Det finns en WhatsApp-gemenskap för Chirpity-användare. Du kan dela problem, föreslå nya funktioner och diskutera artidentifieringar i gruppchattarna. Om du vill gå med i gemenskapen, tryck bara på denna knapp för att komma till WhatsApp-inbjudningssidan:" + ], + "join-whatsapp": [ + "Gå med i Chirpity WhatsApp-gemenskapen" + ] +} diff --git a/I18n/community.zh.json b/I18n/community.zh.json new file mode 100644 index 00000000..4139efd3 --- /dev/null +++ b/I18n/community.zh.json @@ -0,0 +1,12 @@ +{ + "heading": [ + "需要帮助吗?" + ], + "content": [ + "Chirpity 用户有一个 WhatsApp 社区。您可以在群聊中分享问题、提出新功能建议并讨论物种识别。如果您想加入该社区,只需点击此按钮即可访问 WhatsApp 邀请页面:" + ], + "join-whatsapp": [ + "加入 Chirpity WhatsApp 社区" + ] + } + \ No newline at end of file diff --git a/I18n/eBird.en.json b/I18n/eBird.en.json new file mode 100644 index 00000000..572fd9aa --- /dev/null +++ b/I18n/eBird.en.json @@ -0,0 +1,138 @@ +[ + { + "id": null, + "textContent": "eBird Record FAQ" + }, + { + "id": null, + "textContent": "What is eBird?" + }, + { + "id": null, + "textContent": "eBird" + }, + { + "id": null, + "textContent": "is an online platform for sharing bird observation data, managed by the Cornell Lab of Ornithology." + }, + { + "id": null, + "textContent": "What is an eBird Record File?" + }, + { + "id": null, + "textContent": "The record file is a spreadsheet of bird observation data that can be imported into the eBird platform." + }, + { + "id": null, + "textContent": "How does Chirpity organise my detections" + }, + { + "id": null, + "textContent": "The application creates a checklist for each file associated with your export. These checklists contain a total of the call detections for each species in that file. Where you have entered a call count, this figure is used, otherwise one call is assumed." + }, + { + "id": null, + "textContent": "The exported file contains a row of headers explaining what each column represents. You'll find" + }, + { + "id": null, + "textContent": "further details" + }, + { + "id": null, + "textContent": "on the eBird site." + }, + { + "id": null, + "textContent": "Important:" + }, + { + "id": null, + "textContent": "the header row needs to be deleted before you upload the file." + }, + { + "id": null, + "textContent": "How do I upload my eBird record file?" + }, + { + "id": null, + "textContent": "Visit" + }, + { + "id": null, + "textContent": "eBird" + }, + { + "id": null, + "textContent": "and sign up for or sign in to your eBird account. Once you have an account and are logged in go to" + }, + { + "id": null, + "textContent": "the import form" + }, + { + "id": null, + "textContent": "." + }, + { + "id": null, + "textContent": "Click \"Choose file\" and select the file you have prepared" + }, + { + "id": null, + "textContent": "Important:" + }, + { + "id": null, + "textContent": "check \"eBird Record format (Extended)\"" + }, + { + "id": null, + "textContent": "Hit \"Import file\"" + }, + { + "id": null, + "textContent": "Why are there errors when I try to upload my record file?" + }, + { + "id": null, + "textContent": "Firstly, make sure you have deleted the header row. eBird expects the first row in the file to contain an observation." + }, + { + "id": null, + "textContent": "If this is not the problem, and you are seeing errors relating to species not being recognised, make sure the language preferences you have set in Chirpity match those you have set for your eBird account." + }, + { + "id": null, + "textContent": "Why are Country and State/Province columns blank?" + }, + { + "id": null, + "textContent": "These fields are optional in the eBird record format. Although the OpensStreetMap place lookup API used by Chirpity will give State and Country, it does not supply them in the format used by eBird. You can look up the correct format for your country and region in this" + }, + { + "id": null, + "textContent": "spreadsheet" + }, + { + "id": null, + "textContent": "." + }, + { + "id": null, + "textContent": "Why did you choose eBird? Do you have plans to allow sharing with other sites?" + }, + { + "id": null, + "textContent": "eBird is the simplest platform to use. This is because it has a published record format, and perhaps most importantly, the eBird taxonomy aligns to the one used by the both the BirdNET and Nocmig models." + }, + { + "id": null, + "textContent": "I hope to offer the ability to share audio clips with Xeno-Canto in a future release. This depends on them releasing a suitable upload API." + }, + { + "id": null, + "textContent": "The responsibility for checking the record file for accuracy is yours. Chirpity makes no guarantees whatsoever for the accuracy of any of the data in the record files. By using this feature, you acknowledge and agree to this." + } + ] \ No newline at end of file diff --git a/I18n/index.da.json b/I18n/index.da.json new file mode 100644 index 00000000..62cdc425 --- /dev/null +++ b/I18n/index.da.json @@ -0,0 +1,192 @@ +{ + "Add to Library on Save-circle-help": [ + "Hvis aktiveret, tilføjes lydfiler til bibliotekets placering ved hver arkivregistrering." + ], + "Adjust font size-circle-help": [ + "Ændr de globale skriftstørrelsesindstillinger for applikationen." + ], + "Audio Library-circle-help": [ + "Chirpity kan organisere dine lydfiler i et permanent bibliotek på en placering, du vælger, f.eks. en datadisk eller netværksdrev. Når filerne er gemt, kan du slette de oprindelige filer, og alle optagelser er synlige i applikationen. For at gemme lyd i biblioteket kan du enten vælge 'Gem lyd fra arkivresultater i bibliotek' i menuen 'Optagelser' eller aktivere 'Tilføj til bibliotek ved gemning' nedenfor. Filer gemmes i følgende struktur:

Optagelsesplacering / År / Måned / Filnavn

'Komprimerede' lydfiler kræver omkring 1 GB plads for 24 timers lyd, mens 'tabsfrie' filer konverteres til FLAC-format, der bevarer den oprindelige lydkvalitet, bitrate og kanaler, men reducerer filstørrelsen til cirka halvdelen." + ], + "Audio notification-circle-help": [ + "Hvis aktiveret, vises en systemmeddelelse, når analyser, der tager længere end tredive sekunder, er færdige." + ], + "Backend-circle-help": [ + "WebGL/WebGPU-backends kan forbedre ydeevnen og reducere energiforbruget på visse systemer." + ], + "Batch Size-circle-help": [ + "Optimering af batchstørrelsen kan øge behandlingshastigheden for længere filer." + ], + "Clear Call Cache-circle-help": [ + "Data brugt til referencekald gemmes i cache. Rydning af cachen opdaterer kald for hver art næste gang en sammenligningsanmodning foretages." + ], + "Confidence Threshold-circle-help": [ + "Bestemmer det minimale tillidsniveau, der kræves for, at resultater returneres." + ], + "Context Mode-circle-help": [ + "Når aktiveret, tilpasser konteksttilstand forudsigelser ved at analysere den omgivende kontekst. Det kan kun ændres før en analyse, og en lav initial tillidsgrænse anbefales, f.eks. 20-30 %. Konteksttilstand er ikke tilgængelig i BirdNET-modellen." + ], + "Crop Library-circle-help": [ + "Hvis aktiveret, beskæres lydfiler, der indeholder dagslydsperioder, så kun lydfiler fra natperioder gemmes." + ], + "Debug Mode-circle-help": [ + "Aktivér fejlsøgningsmodus (ændringer i denne indstilling kræver en genstart af Chirpity for at træde i kraft)." + ], + "Decorators-circle-help": [ + "'Pad' tilføjer 2 sekunder før og efter et udvalg i det eksporterede lyd. 'Fade' tilføjer en 1-sekunders fade-effekt i starten og slutningen af lydfilen." + ], + "Default Location-circle-help": [ + "Chirpity bruger placeringsoplysninger til at bestemme skumrings- og daggryperioder for optagelser." + ], + "Default Settings-circle-help": [ + "Nulstil konfigurationsindstillinger til standardværdierne. Bemærk: Genstart Chirpity for at se ændringerne. Sprogindstillinger skal nulstilles manuelt." + ], + "Down mix-circle-help": [ + "Hvis aktiveret, konverteres eksporteret lyd til mono." + ], + "High Pass Filter-circle-help": [ + "Hvis aktiveret, fjernes lavfrekvent støj under tærsklen." + ], + "IUCN-circle-help": [ + "Hvis aktiveret, vises den seneste globale IUCN-status for hver art i rapporten. Ikonet linker til vurderingssiden på IUCN-webstedet. Feltet 'Scope' viser vurderingen af arten i denne region (hvis tilgængelig)." + ], + "Language-circle-help": [ + "Vælg dit foretrukne sprog til fuglenavne." + ], + "List-circle-help": [ + "Filtrerer de registreringer, der returneres i resultaterne. 'Lokale fugle': ekskluderer fugle, der sandsynligvis ikke findes i din region. 'Natfugle': ekskluderer fuglekald og arter, der ikke er kendt for at kalde om natten. Den brugerdefinerede liste giver dig mulighed for at uploade en fil, der angiver de arter, der skal genkendes." + ], + "Low Shelf Filter-circle-help": [ + "Hvis anvendt, dæmpes lavfrekvent støj under skæringsfrekvensen." + ], + "Model-circle-help": [ + "Vælg, om du vil bruge Nocmig-modellen, der er optimeret til natlige trækfuglekald i Europa, eller BirdNET, der kan genkende over 6000 arter på verdensplan." + ], + "Nocmig Mode-circle-help": [ + "Når aktiveret, viser denne 'Nocmig'-tilstand kun de registreringer, der findes om natten." + ], + "Normalise-circle-help": [ + "Hvis aktiveret, normaliseres det lyd, du hører, hvilket udvider det dynamiske område." + ], + "Prevent system sleep-circle-help": [ + "Hvis aktiveret, forhindrer det, at systemet går i dvale, mens Chirpity er i brug." + ], + "Send Filtered Audio-circle-help": [ + "At sende højpas- eller lavhylde-filtreret lyd til en model påvirker normalt modellens nøjagtighed negativt. Brug denne mulighed med forsigtighed!" + ], + "Show frequency labels-circle-help": [ + "Hvis aktiveret, viser spektrogrammet frekvensen på venstre side." + ], + "Signal to Noise Ratio-circle-help": [ + "Når aktiveret, ignorerer SNR-filteret dele af lyd, hvor ethvert akustisk signal er under tærsklen. Højere værdier ignorerer gradvist højere segmenter. Selvom dette kan føre til hurtigere behandling, bør det betragtes som eksperimentelt, og enhver ikke-nulværdi kan overse registreringer. Tip: For at finde en anvendelig SNR-værdi skal du udføre en analyse på en kort fil med de svageste registreringer, du sikkert kan identificere. Forøg SNR-værdien, indtil registreringen ikke længere fanges. Når denne tærskel er fundet, skal du reducere den til det højeste niveau, der fanger registreringen." + ], + "Species Threshold-circle-help": [ + "Bestem den minimale hyppighed på eBird-tjeklisten for at inkludere arter. Hvis 'Tilpas liste til årets uge' er aktiveret, tilpasses listen for at inkludere de arter, der forventes for optagelsesugen." + ], + "Threads-circle-help": [ + "Antallet af parallelle analyser, der skal udføres. Som standard er dette indstillet til antallet af CPU-kerner på maskinen for optimal ydeevne. Med GPU-backenden fungerer et lavere antal bedre, f.eks. 1-3." + ], + "Use Location settings-circle-help": [ + "Når aktiveret, rapporterer natfuglefilteret fugle baseret på dine placeringsindstillinger." + ], + "Volume Adjustment-circle-help": [ + "Juster lydstyrken for at kompensere for lave optagelsesniveauer." + ], + "navBarFile": ["Fil"], + "navbarHelp": ["Hjælp"], + "navbarRecords": ["Optegnelser"], + "navbarAnalysis": ["Analyse"], + "navbarSettings": ["Indstillinger"], + "open-file": [ + "Åbn lydfil(er)", + "Ctrl+O" + ], + "open-folder": [ + "Åbn mappe(r)" + ], + "saveCSV": [ + "Eksportér resultater til CSV" + ], + "save-eBird": [ + "Eksportér eBird rekordfil" + ], + "save-Raven": [ + "Eksportér Raven valg tabel" + ], + "export-audio": [ + "Eksportér valgt lyd", + "Ctrl+E" + ], + "saveLabels": [ + "Gem Audacity etiketter" + ], + "exit": [ + "Afslut" + ], + "save2db": [ + "Gem til arkiv", + "Ctrl+S" + ], + "charts": [ + "Vis diagrammer" + ], + "explore": [ + "Udforsk arkiv" + ], + "active-analysis": [ + "Vend tilbage til aktiv analyse" + ], + "compress-and-organise": [ + "Gem lyd fra arkivresultater til bibliotek" + ], + "purge-file": [ + "Fjern nuværende fil fra arkiv" + ], + "analyse": [ + "Analyser nuværende fil", + "Ctrl+A" + ], + "analyseSelection": [ + "Analyser valgt interval" + ], + "analyseAll": [ + "Analyser alle åbne filer", + "Ctrl+Shift+A" + ], + "reanalyse": [ + "Gen-analyser nuværende fil" + ], + "reanalyseAll": [ + "Gen-analyser alle åbne filer" + ], + "usage": [ + "Bruger Chirpity" + ], + "settingsHelp": [ + "Indstillinger" + ], + "keyboardHelp": [ + "Tastaturgenveje" + ], + "diagnostics": [ + "Diagnostik" + ], + "startTour": [ + "Vis tur" + ], + "bugs": [ + "Deltag i fællesskabet" + ], + "FAQ": [ + "Ofte stillede spørgsmål" + ], + "species": [ + "Hvilke arter er detekteret?" + ], + "eBird": [ + "Hvad er en eBird rekord?" + ], + "update-progress": [ + "Downloader opdatering:" + ] +} diff --git a/I18n/index.de.json b/I18n/index.de.json new file mode 100644 index 00000000..0f8b3e40 --- /dev/null +++ b/I18n/index.de.json @@ -0,0 +1,192 @@ +{ + "Add to Library on Save-circle-help": [ + "Wenn aktiviert, werden Audiodateien bei jeder Archivierungserkennung an den Bibliotheksstandort hinzugefügt." + ], + "Adjust font size-circle-help": [ + "Ändern Sie die globalen Schriftgrößeneinstellungen für die Anwendung." + ], + "Audio Library-circle-help": [ + "Chirpity kann Ihre Audiodateien in einer permanenten Bibliothek an einem von Ihnen gewählten Speicherort organisieren, z. B. auf einer Datenplatte oder einem Netzlaufwerk. Nach dem Speichern können Sie die Originaldateien löschen, und alle Aufnahmen sind in der Anwendung sichtbar. Um Audio in der Bibliothek zu speichern, können Sie entweder das Menü 'Aufnahmen' aufrufen und 'Audio aus Archivergebnissen in der Bibliothek speichern' auswählen oder die Option 'Zur Bibliothek hinzufügen beim Speichern' unten aktivieren. Dateien werden in der folgenden Struktur gespeichert:

Aufzeichnungsort / Jahr / Monat / Dateiname

'Komprimierte' Audiodateien benötigen etwa 1 GB Speicher für 24 Stunden, während 'verlustfreie' Dateien ins FLAC-Format konvertiert werden, wodurch die ursprüngliche Wiedergabetreue, Bitrate und Kanäle erhalten bleiben, jedoch die Dateigröße etwa halbiert wird." + ], + "Audio notification-circle-help": [ + "Wenn aktiviert, wird eine Systembenachrichtigung angezeigt, wenn Analysen, die länger als dreißig Sekunden dauern, abgeschlossen sind." + ], + "Backend-circle-help": [ + "WebGL/WebGPU-Backends können die Leistung verbessern und den Energieverbrauch auf einigen Systemen reduzieren." + ], + "Batch Size-circle-help": [ + "Das Optimieren der Stapelgröße kann die Verarbeitungsgeschwindigkeit bei längeren Dateien erhöhen." + ], + "Clear Call Cache-circle-help": [ + "Daten, die für Referenzaufrufe verwendet werden, werden zwischengespeichert. Durch das Löschen des Caches werden die Aufrufe für jede Spezies aktualisiert, wenn das nächste Mal eine Vergleichsanfrage erfolgt." + ], + "Confidence Threshold-circle-help": [ + "Bestimmt die minimale Vertrauensstufe, die erforderlich ist, damit Ergebnisse zurückgegeben werden." + ], + "Context Mode-circle-help": [ + "Wenn aktiviert, passt der Kontextmodus die Vorhersagen durch Analyse des umgebenden Kontexts an. Er kann nur vor einer Analyse geändert werden, und eine anfängliche niedrige Vertrauensschwelle wird empfohlen, z. B. 20-30%. Der Kontextmodus ist im BirdNET-Modell nicht verfügbar." + ], + "Crop Library-circle-help": [ + "Wenn aktiviert, werden Audiodateien, die Tageslichtperioden enthalten, beschnitten, sodass nur Audiodateien aus Nachtperioden gespeichert werden." + ], + "Debug Mode-circle-help": [ + "Debug-Modus aktivieren (Änderungen an dieser Einstellung erfordern einen Neustart von Chirpity, um wirksam zu werden)." + ], + "Decorators-circle-help": [ + "'Pad' fügt 2 Sekunden vor und nach einer Auswahl im exportierten Audio hinzu. 'Fade' fügt einen 1-sekündigen Fade-Effekt am Anfang und Ende des Audios hinzu." + ], + "Default Location-circle-help": [ + "Chirpity verwendet Standortinformationen, um die Dämmerungs- und Morgengrauenzeiten für Aufnahmen zu bestimmen." + ], + "Default Settings-circle-help": [ + "Setzen Sie die Konfigurationseinstellungen auf die Standardwerte zurück. Hinweis: Starten Sie Chirpity neu, um die Änderungen zu sehen. Spracheinstellungen müssen manuell zurückgesetzt werden." + ], + "Down mix-circle-help": [ + "Wenn aktiviert, wird das exportierte Audio in Mono konvertiert." + ], + "High Pass Filter-circle-help": [ + "Wenn aktiviert, wird niederfrequenter Lärm unterhalb der Schwelle entfernt." + ], + "IUCN-circle-help": [ + "Wenn aktiviert, wird der letzte weltweite IUCN-Status für jede Spezies im Bericht angezeigt. Das Symbol verlinkt auf die Bewertungsseite auf der IUCN-Website. Das Feld 'Scope' zeigt die Bewertung der Spezies in dieser Region an (sofern verfügbar)." + ], + "Language-circle-help": [ + "Wählen Sie Ihre bevorzugte Sprache für Vogelnamen." + ], + "List-circle-help": [ + "Filtert die in den Ergebnissen zurückgegebenen Erkennungen. 'Lokale Vögel': schließt Vögel aus, die in Ihrer Region wahrscheinlich nicht vorkommen. 'Nachtvögel': schließt Vogelrufe und Arten aus, die nachts nicht bekannt sind. Die benutzerdefinierte Liste ermöglicht es Ihnen, eine Datei hochzuladen, die die zu erkennenden Arten auflistet." + ], + "Low Shelf Filter-circle-help": [ + "Wenn verwendet, wird der niederfrequente Lärm unterhalb der Trennfrequenz gedämpft." + ], + "Model-circle-help": [ + "Wählen Sie, ob Sie das Nocmig-Modell verwenden möchten, das für nächtliche Zugrufe in Europa optimiert ist, oder BirdNET, das über 6000 Arten weltweit erkennen kann." + ], + "Nocmig Mode-circle-help": [ + "Wenn aktiviert, sucht und zeigt dieser 'Nocmig'-Modus nur die nachts gefundenen Erkennungen an." + ], + "Normalise-circle-help": [ + "Wenn aktiviert, wird das von Ihnen gehörte Audio normalisiert, wodurch der Dynamikbereich erweitert wird." + ], + "Prevent system sleep-circle-help": [ + "Wenn aktiviert, verhindert, dass das System in den Ruhezustand wechselt, während Chirpity in Verwendung ist." + ], + "Send Filtered Audio-circle-help": [ + "Das Senden von High Pass oder Low Shelf gefiltertem Audio an ein Modell wirkt sich in der Regel negativ auf dessen Genauigkeit aus. Verwenden Sie diese Option mit Vorsicht!" + ], + "Show frequency labels-circle-help": [ + "Wenn aktiviert, zeigt das Spektrogramm die Frequenz an der linken Seite an." + ], + "Signal to Noise Ratio-circle-help": [ + "Wenn aktiviert, ignoriert der SNR-Filter Teile des Audios, in denen jedes akustische Ereignis unterhalb des Schwellenwerts liegt. Höhere Werte ignorieren zunehmend lautere Segmente. Während dies zu einer schnelleren Verarbeitung führt, sollte dies als experimentell betrachtet werden und jede Nicht-Null-Wert kann Erkennungen übersehen. Tipp: Um einen verwertbaren SNR-Wert zu finden, führen Sie eine Analyse auf einer kurzen Datei mit den schwächsten Erkennungen durch, die Sie sicher identifizieren können. Erhöhen Sie den SNR-Wert, bis die Erkennung nicht mehr erfasst wird. Sobald dieser Schwellenwert gefunden ist, reduzieren Sie ihn auf das höchste Niveau, das die Erkennung erfasst." + ], + "Species Threshold-circle-help": [ + "Bestimmen Sie die minimale Häufigkeit auf der eBird-Checkliste für die Aufnahme von Arten. Wenn 'Liste an die Woche des Jahres anpassen' aktiviert ist, wird die Liste so angepasst, dass die Arten enthalten sind, die für die Woche der Aufnahme erwartet werden." + ], + "Threads-circle-help": [ + "Die Anzahl der parallelen Analysen, die durchgeführt werden sollen. Standardmäßig ist dies auf die Anzahl der CPU-Kerne der Maschine eingestellt, um eine optimale Leistung zu erzielen. Mit dem GPU-Backend funktioniert eine niedrigere Anzahl besser, z. B. 1-3." + ], + "Use Location settings-circle-help": [ + "Wenn aktiviert, meldet der Nachvogel-Filter die Vögel basierend auf Ihren Standorteinstellungen." + ], + "Volume Adjustment-circle-help": [ + "Passen Sie die Lautstärke des Audios an, um niedrige Aufnahmestufen auszugleichen." + ], + "navBarFile": ["Datei"], + "navbarHelp": ["Hilfe"], + "navbarRecords": ["Aufzeichnungen"], + "navbarAnalysis": ["Analyse"], + "navbarSettings": ["Einstellungen"], + "open-file": [ + "Audio-Datei(en) öffnen", + "Ctrl+O" + ], + "open-folder": [ + "Ordner öffnen" + ], + "saveCSV": [ + "Ergebnisse in CSV exportieren" + ], + "save-eBird": [ + "eBird Datensatz exportieren" + ], + "save-Raven": [ + "Raven-Auswahltabelle exportieren" + ], + "export-audio": [ + "Ausgewählte Audio exportieren", + "Ctrl+E" + ], + "saveLabels": [ + "Audacity-Labels speichern" + ], + "exit": [ + "Beenden" + ], + "save2db": [ + "In Archiv speichern", + "Ctrl+S" + ], + "charts": [ + "Diagramme anzeigen" + ], + "explore": [ + "Archiv durchsuchen" + ], + "active-analysis": [ + "Zur aktiven Analyse zurückkehren" + ], + "compress-and-organise": [ + "Audio aus Archiv-Ergebnissen in Bibliothek speichern" + ], + "purge-file": [ + "Aktuelle Datei aus Archiv entfernen" + ], + "analyse": [ + "Aktuelle Datei analysieren", + "Ctrl+A" + ], + "analyseSelection": [ + "Ausgewählten Abschnitt analysieren" + ], + "analyseAll": [ + "Alle geöffneten Dateien analysieren", + "Ctrl+Shift+A" + ], + "reanalyse": [ + "Aktuelle Datei erneut analysieren" + ], + "reanalyseAll": [ + "Alle geöffneten Dateien erneut analysieren" + ], + "usage": [ + "Chirpity verwenden" + ], + "settingsHelp": [ + "Einstellungen" + ], + "keyboardHelp": [ + "Tastenkürzel" + ], + "diagnostics": [ + "Diagnose" + ], + "startTour": [ + "Tour anzeigen" + ], + "bugs": [ + "Tritt der Gemeinschaft bei" + ], + "FAQ": [ + "FAQs" + ], + "species": [ + "Welche Arten werden erkannt?" + ], + "eBird": [ + "Was ist ein eBird-Datensatz?" + ], + "update-progress": [ + "Update wird heruntergeladen:" + ] +} diff --git a/I18n/index.en.json b/I18n/index.en.json new file mode 100644 index 00000000..3569b177 --- /dev/null +++ b/I18n/index.en.json @@ -0,0 +1,205 @@ +{ + "Add to Library on Save-circle-help": [ + "When enabled, audio files are added to the library location whenever detections are saved to the archive." + ], + "Adjust font size-circle-help": [ + "Change the global font size settings for the application." + ], + "Audio Library-circle-help": [ + "Chirpity can organise your audio into a permanent library at a location of your choice, such as a data disk or network drive. Once saved, you can remove the original files, and all records will be viewable in the application. To save audio to the library, you can either go to the Records menu and choose 'Save Audio from Archive Results to Library', or enable the 'Add to Library on Save' option below. Files will be stored in the following structure:

Recording Site / Year / Month / Filename

'Lossy' audio requires about 1GB of storage per 24 hours, while 'Lossless' converts files to FLAC format, preserving original fidelity, bitrate, and channels, but roughly halving the file size." + ], + "Audio notification-circle-help": [ + "When enabled, there will be a system notification when analyses that take over thirty seconds are finished." + ], + "Backend-circle-help": [ + "The webGL/webGPU backends can improve performance and reduce power consumption on some systems." + ], + "Batch Size-circle-help": [ + "Optimising the batch size can increase processing speed on longer files." + ], + "Clear Call Cache-circle-help": [ + "The data used for the reference call comparisons are cached. Clearing the cache will refresh the calls for each species the next time a comparison is requested" + ], + "Confidence Threshold-circle-help": [ + "Determines the minimum confidence required for results to be returned" + ], + "Context Mode-circle-help": [ + "When enabled, context mode adapts predictions by analysing the surrounding context. It can only be changed prior to an analysis, and a low initial confidence threshold is recommended e.g 20-30%. Context mode is not available in the BirdNET model" + ], + "Crop Library-circle-help": [ + "When enabled, audio files containing daylight periods are cropped, so the audio is only saved for nocturnal periods." + ], + "Debug Mode-circle-help": [ + "Enter debug mode (changes to this setting require a Chirpity relaunch to take effect)" + ], + "Decorators-circle-help": [ + "'Pad' adds 2 seconds before and after a selection to the exported audio. 'Fade' adds a 1 second fade effect to the start and end of the audio" + ], + "Default Location-circle-help": [ + "Chirpity uses location information to determine the dawn and dusk times for recordings" + ], + "Default Settings-circle-help": [ + "Reset the configuration settings to their default values. N.B. Relaunch Chirpity to see changes, also, language settings will need to be re-set manually" + ], + "Down mix-circle-help": [ + "When enabled, exported audio will be downmixed to mono" + ], + "High Pass Filter-circle-help": [ + "When set, removes low frequency noise below the threshold." + ], + "IUCN-circle-help": [ + "When enabled, the latest Global IUCN assessment status is displayed for each species in the summary. The icon links to the assessment page on the IUCN website. The Assessment Scope will display the IUCN assessment of the species in that region (where available)." + ], + "Language-circle-help": [ + "Select your preferred language for birds' common names" + ], + "List-circle-help": [ + "Filters the detections returned in results. Local Birds: excludes birds unlikely to be found in your region. Nocturnal Birds: excludes bird song and species not known to call at night. The custom list allows you to upload a file listing the species to detect" + ], + "Low Shelf Filter-circle-help": [ + "When used, attenuates low frequency noise below the cut-off frequency." + ], + "Model-circle-help": [ + "Select whether to use the Nocmig model, optimised for Nocturnal Migration Calls in Europe, or BirdNET, which can detect over 6000 species across the globe." + ], + "Nocmig Mode-circle-help": [ + "When enabled, this 'Nocmig mode' only searches for and only displays detections found during the night" + ], + "Normalise-circle-help": [ + "When enabled, the audio you hear will be normalised, expanding the dynamic range." + ], + "Prevent system sleep-circle-help": [ + "When enabled, prevent the system from suspending whilst Chirpity is in use." + ], + "Send Filtered Audio-circle-help": [ + "Sending High Pass or Low Shelf filtered audio to a model will usually have a negative impact on its accuracy. Use this option with caution!" + ], + "Show frequency labels-circle-help": [ + "When enabled, the spectrogram will display the frequency on the left side." + ], + "Signal to Noise Ratio-circle-help": [ + "The SNR filter, when enabled, will skip over portions of audio where any audio event is below the threshold. Higher values skip increasingly noisy segments. whilst this will result in faster processing it must be considered experimental and any non-zero value may miss detections. Tip: To find a workable SNR value, run analysis on a short file with the faintest detections you can confidently identify. Increase the SNR value until the detection is not picked up. Once you find this threshold, back it off to the highest level that picks up the detection." + ], + "Species Threshold-circle-help": [ + "Define the minimum eBird checklist frequency for species inclusion. If 'Adjust list for the week of the year' is enabled, the list will be adjusted to include species expected for the recording week." + ], + "Threads-circle-help": [ + "The number of parallel analyses to run. By default, this is set to the number of CPU cores on the machine for fastest performance. With the GPU backend, a lower number works better e.g. 1-3" + ], + "Use Location settings-circle-help": [ + "When activated, the Nocturnal birds filter reports birds based on your location settings." + ], + "Volume Adjustment-circle-help": [ + "Adjust the volume of audio to compensate for low recording levels." + ], + + "navBarFile": [ + "File" + ], + "navbarHelp": [ + "Help" + ], + "navbarRecords": [ + "Records" + ], + "navbarAnalysis": [ + "Analysis" + ], + "navbarSettings": [ + "Settings" + ], + + + "open-file": [ + "Open Audio File(s)", + "Ctrl+O" + ], + "open-folder": [ + "Open Folder(s)" + ], + "saveCSV": [ + "Export Results to CSV" + ], + "save-eBird": [ + "Export eBird Record file" + ], + "save-Raven": [ + "Export Raven Selection Table" + ], + "export-audio": [ + "Export Selected Audio", + "Ctrl+E" + ], + "saveLabels": [ + "Save Audacity Labels" + ], + "exit": [ + "Exit" + ], + "save2db": [ + "Save to Archive", + "Ctrl+S" + ], + "charts": [ + "View charts" + ], + "explore": [ + "Explore Archive" + ], + "active-analysis": [ + "Return to Active Analysis" + ], + "compress-and-organise": [ + "Save Audio from Archive Results to Library" + ], + "purge-file": [ + "Remove Current File From Archive" + ], + "analyse": [ + "Analyse Current File", + "Ctrl+A" + ], + "analyseSelection": [ + "Analyse Selected Interval" + ], + "analyseAll": [ + "Analyse All Open Files", + "Ctrl+Shift+A" + ], + "reanalyse": [ + "Re-analyse Current File" + ], + "reanalyseAll": [ + "Re-analyse All Open Files" + ], + "usage": [ + "Using Chirpity" + ], + "settingsHelp": [ + "Settings" + ], + "keyboardHelp": [ + "Keyboard Shortcuts" + ], + "diagnostics": [ + "Diagnostics" + ], + "startTour": [ + "Show Tour" + ], + "bugs": [ + "Join the community" + ], + "FAQ": [ + "FAQs" + ], + "species": [ + "What species are detected?" + ], + "eBird": [ + "What is an eBird Record?" + ], + "update-progress": [ + "Downloading update:" + ] + } \ No newline at end of file diff --git a/I18n/index.es.json b/I18n/index.es.json new file mode 100644 index 00000000..93ed56a4 --- /dev/null +++ b/I18n/index.es.json @@ -0,0 +1,192 @@ +{ + "Add to Library on Save-circle-help": [ + "Cuando está activada, los archivos de audio se añaden a la ubicación de la biblioteca cada vez que se guardan detecciones en el archivo." + ], + "Adjust font size-circle-help": [ + "Cambia los ajustes globales del tamaño de fuente para la aplicación." + ], + "Audio Library-circle-help": [ + "Chirpity puede organizar tu audio en una biblioteca permanente en una ubicación de tu elección, como un disco de datos o una unidad de red. Una vez guardados, puedes eliminar los archivos originales, y todos los registros serán visibles en la aplicación. Para guardar audio en la biblioteca, puedes ir al menú Registros y elegir 'Guardar audio de los resultados archivados en la biblioteca', o activar la opción 'Añadir a la biblioteca al guardar' a continuación. Los archivos se guardarán con la siguiente estructura:

Sitio de grabación / Año / Mes / Nombre del archivo

El audio 'con pérdida' requiere aproximadamente 1 GB de almacenamiento por cada 24 horas, mientras que el audio 'sin pérdida' convierte los archivos al formato FLAC, preservando la fidelidad, la tasa de bits y los canales originales, pero reduciendo el tamaño del archivo aproximadamente a la mitad." + ], + "Audio notification-circle-help": [ + "Cuando está activada, habrá una notificación del sistema cuando los análisis que tardan más de treinta segundos hayan finalizado." + ], + "Backend-circle-help": [ + "Los backends webGL/webGPU pueden mejorar el rendimiento y reducir el consumo de energía en algunos sistemas." + ], + "Batch Size-circle-help": [ + "Optimizar el tamaño del lote puede aumentar la velocidad de procesamiento en archivos largos." + ], + "Clear Call Cache-circle-help": [ + "Los datos utilizados para las comparaciones de llamadas de referencia se almacenan en caché. Limpiar la caché actualizará las llamadas de cada especie la próxima vez que se solicite una comparación." + ], + "Confidence Threshold-circle-help": [ + "Determina la confianza mínima requerida para que se devuelvan resultados." + ], + "Context Mode-circle-help": [ + "Cuando está activado, el modo de contexto adapta las predicciones analizando el contexto circundante. Solo se puede cambiar antes de un análisis, y se recomienda un umbral de confianza inicial bajo, por ejemplo, del 20-30%. El modo de contexto no está disponible en el modelo BirdNET." + ], + "Crop Library-circle-help": [ + "Cuando está activada, los archivos de audio que contienen periodos diurnos se recortan, por lo que solo se guarda el audio correspondiente a los periodos nocturnos." + ], + "Debug Mode-circle-help": [ + "Entra en el modo de depuración (los cambios en esta configuración requieren reiniciar Chirpity para que surtan efecto)." + ], + "Decorators-circle-help": [ + "'Pad' añade 2 segundos antes y después de una selección al audio exportado. 'Fade' añade un efecto de fundido de 1 segundo al inicio y al final del audio." + ], + "Default Location-circle-help": [ + "Chirpity utiliza información de ubicación para determinar los tiempos de amanecer y atardecer de las grabaciones." + ], + "Default Settings-circle-help": [ + "Restaura los ajustes de configuración a sus valores predeterminados. N.B. Relanza Chirpity para ver los cambios; además, los ajustes de idioma deberán restablecerse manualmente." + ], + "Down mix-circle-help": [ + "Cuando está activada, el audio exportado se mezcla a mono." + ], + "High Pass Filter-circle-help": [ + "Cuando se establece, elimina el ruido de baja frecuencia por debajo del umbral." + ], + "IUCN-circle-help": [ + "Cuando está activada, se muestra el estado de evaluación global más reciente de la IUCN para cada especie en el resumen. El icono enlaza a la página de evaluación en el sitio web de la IUCN. El Alcance de la Evaluación mostrará la evaluación de la especie en esa región (cuando esté disponible)." + ], + "Language-circle-help": [ + "Selecciona tu idioma preferido para los nombres comunes de las aves." + ], + "List-circle-help": [ + "Filtra las detecciones devueltas en los resultados. Aves locales: excluye aves que probablemente no se encuentren en tu región. Aves nocturnas: excluye cantos de aves y especies que no se sabe que llamen por la noche. La lista personalizada te permite subir un archivo que enumere las especies a detectar." + ], + "Low Shelf Filter-circle-help": [ + "Cuando se utiliza, atenúa el ruido de baja frecuencia por debajo de la frecuencia de corte." + ], + "Model-circle-help": [ + "Selecciona si deseas usar el modelo Nocmig, optimizado para llamadas de migración nocturna en Europa, o BirdNET, que puede detectar más de 6000 especies en todo el mundo." + ], + "Nocmig Mode-circle-help": [ + "Cuando está activado, este 'modo Nocmig' solo busca y muestra detecciones encontradas durante la noche." + ], + "Normalise-circle-help": [ + "Cuando está activada, el audio que escuchas será normalizado, ampliando el rango dinámico." + ], + "Prevent system sleep-circle-help": [ + "Cuando está activada, evita que el sistema entre en suspensión mientras se utiliza Chirpity." + ], + "Send Filtered Audio-circle-help": [ + "Enviar audio filtrado con High Pass o Low Shelf a un modelo generalmente tendrá un impacto negativo en su precisión. ¡Usa esta opción con precaución!" + ], + "Show frequency labels-circle-help": [ + "Cuando está activada, el espectrograma mostrará la frecuencia en el lado izquierdo." + ], + "Signal to Noise Ratio-circle-help": [ + "El filtro SNR, cuando está activado, omitirá porciones de audio donde cualquier evento de audio esté por debajo del umbral. Los valores más altos omiten segmentos cada vez más ruidosos. Aunque esto resultará en un procesamiento más rápido, debe considerarse experimental y cualquier valor distinto de cero puede omitir detecciones. Consejo: Para encontrar un valor de SNR adecuado, realiza un análisis en un archivo corto con las detecciones más tenues que puedas identificar con confianza. Aumenta el valor del SNR hasta que la detección no sea captada. Una vez que encuentres este umbral, redúcelo al nivel más alto que capture la detección." + ], + "Species Threshold-circle-help": [ + "Define la frecuencia mínima de la lista de verificación de eBird para la inclusión de especies. Si 'Ajustar la lista para la semana del año' está activada, la lista se ajustará para incluir las especies esperadas para la semana de grabación." + ], + "Threads-circle-help": [ + "El número de análisis paralelos a ejecutar. Por defecto, se establece en el número de núcleos de CPU de la máquina para un rendimiento más rápido. Con el backend de GPU, funciona mejor un número más bajo, por ejemplo, 1-3." + ], + "Use Location settings-circle-help": [ + "Cuando está activado, el filtro de Aves nocturnas informa sobre las aves según los ajustes de ubicación." + ], + "Volume Adjustment-circle-help": [ + "Ajusta el volumen del audio para compensar niveles bajos de grabación." + ], + "navBarFile": ["Archivo"], + "navbarHelp": ["Ayuda"], + "navbarRecords": ["Registros"], + "navbarAnalysis": ["Análisis"], + "navbarSettings": ["Configuración"], + "open-file": [ + "Abrir archivo(s) de audio", + "Ctrl+O" + ], + "open-folder": [ + "Abrir carpeta(s)" + ], + "saveCSV": [ + "Exportar resultados a CSV" + ], + "save-eBird": [ + "Exportar archivo de registro eBird" + ], + "save-Raven": [ + "Exportar tabla de selección Raven" + ], + "export-audio": [ + "Exportar audio seleccionado", + "Ctrl+E" + ], + "saveLabels": [ + "Guardar etiquetas de Audacity" + ], + "exit": [ + "Salir" + ], + "save2db": [ + "Guardar en archivo", + "Ctrl+S" + ], + "charts": [ + "Ver gráficos" + ], + "explore": [ + "Explorar archivo" + ], + "active-analysis": [ + "Volver a análisis activo" + ], + "compress-and-organise": [ + "Guardar audio de los resultados del archivo a la biblioteca" + ], + "purge-file": [ + "Eliminar archivo actual del archivo" + ], + "analyse": [ + "Analizar archivo actual", + "Ctrl+A" + ], + "analyseSelection": [ + "Analizar intervalo seleccionado" + ], + "analyseAll": [ + "Analizar todos los archivos abiertos", + "Ctrl+Shift+A" + ], + "reanalyse": [ + "Reanalizar archivo actual" + ], + "reanalyseAll": [ + "Reanalizar todos los archivos abiertos" + ], + "usage": [ + "Usando Chirpity" + ], + "settingsHelp": [ + "Configuraciones" + ], + "keyboardHelp": [ + "Atajos de teclado" + ], + "diagnostics": [ + "Diagnóstico" + ], + "startTour": [ + "Mostrar recorrido" + ], + "bugs": [ + "Únete a la comunidad" + ], + "FAQ": [ + "Preguntas frecuentes" + ], + "species": [ + "¿Qué especies se detectan?" + ], + "eBird": [ + "¿Qué es un registro eBird?" + ], + "update-progress": [ + "Descargando actualización:" + ] +} diff --git a/I18n/index.fr.json b/I18n/index.fr.json new file mode 100644 index 00000000..e2030256 --- /dev/null +++ b/I18n/index.fr.json @@ -0,0 +1,194 @@ +{ + "Add to Library on Save-circle-help": [ + "Lorsqu'il est activé, les fichiers audio sont ajoutés à l'emplacement de la bibliothèque chaque fois que des détections sont enregistrées dans l'archive." + ], + "Adjust font size-circle-help": [ + "Modifiez les paramètres de taille de police globaux pour l'application." + ], + "Audio Library-circle-help": [ + "Chirpity peut organiser vos fichiers audio dans une bibliothèque permanente à un emplacement de votre choix, comme un disque de données ou un lecteur réseau. Une fois enregistrés, vous pouvez supprimer les fichiers originaux, et tous les enregistrements seront visibles dans l'application. Pour enregistrer de l'audio dans la bibliothèque, vous pouvez soit aller dans le menu 'Enregistrements' et choisir 'Enregistrer l'audio des résultats d'archive dans la bibliothèque', soit activer l'option 'Ajouter à la bibliothèque lors de l'enregistrement' ci-dessous. Les fichiers seront stockés dans la structure suivante :

Site d'enregistrement / Année / Mois / Nom du fichier

Les fichiers audio 'compressés' nécessitent environ 1 Go de stockage pour 24 heures, tandis que les fichiers 'sans perte' sont convertis en format FLAC, préservant la fidélité, le débit binaire et les canaux d'origine, mais réduisant environ de moitié la taille du fichier." + ], + "Audio notification-circle-help": [ + "Lorsqu'il est activé, une notification système s'affichera lorsque les analyses prenant plus de trente secondes seront terminées." + ], + "Backend-circle-help": [ + "Les backends WebGL/WebGPU peuvent améliorer les performances et réduire la consommation d'énergie sur certains systèmes." + ], + "Batch Size-circle-help": [ + "Optimiser la taille du lot peut augmenter la vitesse de traitement sur les fichiers plus longs." + ], + "Clear Call Cache-circle-help": [ + "Les données utilisées pour les comparaisons d'appels de référence sont mises en cache. Effacer le cache actualisera les appels pour chaque espèce la prochaine fois qu'une comparaison sera demandée." + ], + "Confidence Threshold-circle-help": [ + "Détermine la confiance minimale requise pour que les résultats soient retournés." + ], + "Context Mode-circle-help": [ + "Lorsqu'il est activé, le mode contextuel adapte les prédictions en analysant le contexte environnant. Il ne peut être modifié qu'avant une analyse, et un seuil de confiance initial faible est recommandé, par exemple 20-30%. Le mode contextuel n'est pas disponible dans le modèle BirdNET." + ], + "Crop Library-circle-help": [ + "Lorsqu'il est activé, les fichiers audio contenant des périodes de lumière du jour sont recadrés, de sorte que seuls les fichiers audio des périodes nocturnes sont enregistrés." + ], + "Debug Mode-circle-help": [ + "Entrez en mode débogage (les modifications de ce paramètre nécessitent un redémarrage de Chirpity pour prendre effet)." + ], + "Decorators-circle-help": [ + "'Pad' ajoute 2 secondes avant et après une sélection dans l'audio exporté. 'Fade' ajoute un effet de fondu de 1 seconde au début et à la fin de l'audio." + ], + "Default Location-circle-help": [ + "Chirpity utilise les informations de localisation pour déterminer les heures de l'aube et du crépuscule pour les enregistrements." + ], + "Default Settings-circle-help": [ + "Réinitialisez les paramètres de configuration à leurs valeurs par défaut. N.B. Redémarrez Chirpity pour voir les changements, de plus, les paramètres de langue devront être réinitialisés manuellement." + ], + "Down mix-circle-help": [ + "Lorsqu'il est activé, l'audio exporté sera converti en mono." + ], + "High Pass Filter-circle-help": [ + "Lorsqu'il est activé, supprime le bruit de basse fréquence en dessous du seuil." + ], + "IUCN-circle-help": [ + "Lorsqu'il est activé, le dernier statut d'évaluation mondial de l'UICN est affiché pour chaque espèce dans le résumé. L'icône renvoie à la page d'évaluation sur le site de l'UICN. Le champ 'Scope' affiche l'évaluation de l'espèce dans cette région (lorsqu'elle est disponible)." + ], + "Language-circle-help": [ + "Sélectionnez votre langue préférée pour les noms communs des oiseaux." + ], + "List-circle-help": [ + "Filtre les détections retournées dans les résultats. 'Oiseaux locaux' : exclut les oiseaux peu susceptibles d'être trouvés dans votre région. 'Oiseaux nocturnes' : exclut les chants d'oiseaux et les espèces non connues pour chanter la nuit. La liste personnalisée vous permet de télécharger un fichier répertoriant les espèces à détecter." + ], + "Low Shelf Filter-circle-help": [ + "Lorsqu'il est utilisé, atténue le bruit de basse fréquence en dessous de la fréquence de coupure." + ], + "Model-circle-help": [ + "Sélectionnez si vous souhaitez utiliser le modèle Nocmig, optimisé pour les appels de migration nocturne en Europe, ou BirdNET, qui peut détecter plus de 6000 espèces dans le monde entier." + ], + "Nocmig Mode-circle-help": [ + "Lorsqu'il est activé, ce mode 'Nocmig' ne recherche et n'affiche que les détections trouvées pendant la nuit." + ], + "Normalise-circle-help": [ + "Lorsqu'il est activé, l'audio que vous entendez sera normalisé, étendant ainsi la plage dynamique." + ], + "Prevent system sleep-circle-help": [ + "Lorsqu'il est activé, empêche le système de se suspendre pendant que Chirpity est en cours d'utilisation." + ], + "Send Filtered Audio-circle-help": [ + "L'envoi d'audio filtré par High Pass ou Low Shelf à un modèle aura généralement un impact négatif sur sa précision. Utilisez cette option avec prudence!" + ], + "Show frequency labels-circle-help": [ + "Lorsqu'il est activé, le spectrogramme affichera la fréquence sur le côté gauche." + ], + "Signal to Noise Ratio-circle-help": [ + "Le filtre SNR, lorsqu'il est activé, ignore les parties de l'audio où tout événement sonore est en dessous du seuil. Des valeurs plus élevées ignorent des segments de plus en plus bruyants. Bien que cela entraîne un traitement plus rapide, cela doit être considéré comme expérimental et toute valeur non nulle peut manquer des détections. Astuce : Pour trouver une valeur SNR exploitable, effectuez une analyse sur un court fichier avec les détections les plus faibles que vous pouvez identifier avec confiance. Augmentez la valeur SNR jusqu'à ce que la détection ne soit plus captée. Une fois ce seuil trouvé, réduisez-le au niveau le plus élevé qui capte la détection." + ], + "Species Threshold-circle-help": [ + "Définissez la fréquence minimale de la liste de contrôle eBird pour l'inclusion des espèces. Si 'Ajuster la liste pour la semaine de l'année' est activé, la liste sera ajustée pour inclure les espèces attendues pour la semaine d'enregistrement." + ], + "Threads-circle-help": [ + "Le nombre d'analyses parallèles à effectuer. Par défaut, cela est réglé sur le nombre de cœurs CPU de la machine pour une performance optimale. Avec le backend GPU, un nombre inférieur fonctionne mieux, par exemple 1-3." + ], + "Use Location settings-circle-help": [ + "Lorsqu'il est activé, le filtre des oiseaux nocturnes rapporte les oiseaux en fonction de vos paramètres de localisation." + ], + "Volume Adjustment-circle-help": [ + "Ajustez le volume de l'audio pour compenser les niveaux d'enregistrement faibles." + ], + "navBarFile": ["Fichier"], + "navbarHelp": ["Aide"], + "navbarRecords": ["Enregistrements"], + "navbarAnalysis": ["Analyse"], + "navbarSettings": ["Paramètres"], + "open-file": [ + "Ouvrir le(s) fichier(s) audio", + "Ctrl+O" + ], + "open-folder": [ + "Ouvrir le(s) dossier(s)" + ], + "saveCSV": [ + "Exporter les résultats au format CSV" + ], + "save-eBird": [ + "Exporter le fichier d'enregistrement eBird" + ], + "save-Raven": [ + "Exporter la table de sélection Raven" + ], + "export-audio": [ + "Exporter l'audio sélectionné", + "Ctrl+E" + ], + "saveLabels": [ + "Enregistrer les étiquettes Audacity" + ], + "exit": [ + "Quitter" + ], + "save2db": [ + "Enregistrer dans l'archive", + "Ctrl+S" + ], + "charts": [ + "Voir les graphiques" + ], + "explore": [ + "Explorer l'archive" + ], + "active-analysis": [ + "Revenir à l'analyse active" + ], + "compress-and-organise": [ + "Enregistrer l'audio des résultats d'archive dans la bibliothèque" + ], + "purge-file": [ + "Supprimer le fichier actuel de l'archive" + ], + "analyse": [ + "Analyser le fichier actuel", + "Ctrl+A" + ], + "analyseSelection": [ + "Analyser l'intervalle sélectionné" + ], + "analyseAll": [ + "Analyser tous les fichiers ouverts", + "Ctrl+Shift+A" + ], + "reanalyse": [ + "Ré-analyser le fichier actuel" + ], + "reanalyseAll": [ + "Ré-analyser tous les fichiers ouverts" + ], + "usage": [ + "Utiliser Chirpity" + ], + "settingsHelp": [ + "Paramètres" + ], + "keyboardHelp": [ + "Raccourcis clavier" + ], + "diagnostics": [ + "Diagnostics" + ], + "startTour": [ + "Afficher la visite" + ], + "bugs": [ + "Rejoindre la communauté" + ], + "FAQ": [ + "FAQs" + ], + "species": [ + "Quelles espèces sont détectées ?" + ], + "eBird": [ + "Qu'est-ce qu'un enregistrement eBird ?" + ], + "update-progress": [ + "Téléchargement de la mise à jour :" + ] + + +} \ No newline at end of file diff --git a/I18n/index.nl.json b/I18n/index.nl.json new file mode 100644 index 00000000..bf2c1b4f --- /dev/null +++ b/I18n/index.nl.json @@ -0,0 +1,193 @@ +{ + "Add to Library on Save-circle-help": [ + "Wanneer ingeschakeld, worden audiobestanden toegevoegd aan de bibliotheeklocatie telkens wanneer detecties worden opgeslagen in het archief." + ], + "Adjust font size-circle-help": [ + "Wijzig de globale lettergrootte-instellingen voor de applicatie." + ], + "Audio Library-circle-help": [ + "Chirpity kan je audio organiseren in een permanente bibliotheek op een locatie naar keuze, zoals een datadisk of netwerkschijf. Zodra de bestanden zijn opgeslagen, kun je de originele bestanden verwijderen, en alle records zijn zichtbaar in de applicatie. Om audio in de bibliotheek op te slaan, kun je naar het menu 'Records' gaan en 'Audio opslaan van archiefresultaten naar bibliotheek' kiezen, of de optie 'Toevoegen aan bibliotheek bij opslaan' hieronder inschakelen. Bestanden worden opgeslagen in de volgende structuur:

Opnamelocatie / Jaar / Maand / Bestandsnaam

'Lossy' audio vereist ongeveer 1 GB opslagruimte per 24 uur, terwijl 'Lossless' bestanden omzet naar het FLAC-formaat, waarbij originele geluidskwaliteit, bitrate en kanalen behouden blijven, maar het bestand ongeveer halveert in grootte." + ], + "Audio notification-circle-help": [ + "Wanneer ingeschakeld, verschijnt er een systeemmelding zodra analyses die meer dan dertig seconden duren, zijn voltooid." + ], + "Backend-circle-help": [ + "De webGL/webGPU-backends kunnen de prestaties verbeteren en het stroomverbruik op sommige systemen verminderen." + ], + "Batch Size-circle-help": [ + "Het optimaliseren van de batchgrootte kan de verwerkingssnelheid voor langere bestanden verhogen." + ], + "Clear Call Cache-circle-help": [ + "De gegevens die worden gebruikt voor referentieoproepenvergelijkingen worden in de cache opgeslagen. Het wissen van de cache vernieuwt de oproepen voor elke soort de volgende keer dat een vergelijking wordt aangevraagd." + ], + "Confidence Threshold-circle-help": [ + "Bepaalt het minimale vertrouwen dat nodig is om resultaten te retourneren." + ], + "Context Mode-circle-help": [ + "Wanneer ingeschakeld, past de contextmodus voorspellingen aan door de omliggende context te analyseren. Dit kan alleen worden gewijzigd vóór een analyse en een lage aanvankelijke vertrouwensdrempel wordt aanbevolen, bijvoorbeeld 20-30%. Contextmodus is niet beschikbaar in het BirdNET-model." + ], + "Crop Library-circle-help": [ + "Wanneer ingeschakeld, worden audiobestanden met daglichtperioden bijgesneden, zodat alleen audio van nachtelijke perioden wordt opgeslagen." + ], + "Debug Mode-circle-help": [ + "Schakel de foutopsporingsmodus in (wijzigingen in deze instelling vereisen een herstart van Chirpity om effect te hebben)." + ], + "Decorators-circle-help": [ + "'Pad' voegt 2 seconden voor en na een selectie toe aan het geëxporteerde audio. 'Fade' voegt een fade-effect van 1 seconde toe aan het begin en einde van het audio." + ], + "Default Location-circle-help": [ + "Chirpity gebruikt locatiegegevens om de zonsopgang- en zonsondergangtijden voor opnamen te bepalen." + ], + "Default Settings-circle-help": [ + "Herstel de configuratie-instellingen naar de standaardwaarden. N.B. Herstart Chirpity om de wijzigingen te zien; ook moeten de taalinstellingen handmatig opnieuw worden ingesteld." + ], + "Down mix-circle-help": [ + "Wanneer ingeschakeld, wordt geëxporteerde audio naar mono gemixt." + ], + "High Pass Filter-circle-help": [ + "Verwijdert, indien ingesteld, laagfrequent geluid onder de drempel." + ], + "IUCN-circle-help": [ + "Wanneer ingeschakeld, wordt de nieuwste wereldwijde IUCN-beoordelingsstatus voor elke soort weergegeven in het overzicht. Het pictogram linkt naar de beoordelingspagina op de IUCN-website. De beoordelingsscope toont de beoordeling van de soort in die regio (indien beschikbaar)." + ], + "Language-circle-help": [ + "Selecteer je voorkeurstaal voor de algemene namen van vogels." + ], + "List-circle-help": [ + "Filtert de detecties die in de resultaten worden geretourneerd. Lokale vogels: sluit vogels uit die waarschijnlijk niet in jouw regio voorkomen. Nachtelijke vogels: sluit vogelzang en soorten die niet bekend staan om 's nachts te roepen, uit. De aangepaste lijst stelt je in staat een bestand te uploaden waarin de te detecteren soorten worden vermeld." + ], + "Low Shelf Filter-circle-help": [ + "Verzwakt, indien gebruikt, laagfrequent geluid onder de afsnijfrequentie." + ], + "Model-circle-help": [ + "Kies of je het Nocmig-model wilt gebruiken, geoptimaliseerd voor nachtelijke migratieoproepen in Europa, of BirdNET, dat meer dan 6000 soorten wereldwijd kan detecteren." + ], + "Nocmig Mode-circle-help": [ + "Wanneer ingeschakeld, zoekt deze 'Nocmig-modus' alleen naar en toont alleen detecties die 's nachts zijn gevonden." + ], + "Normalise-circle-help": [ + "Wanneer ingeschakeld, wordt het audio dat je hoort genormaliseerd, waardoor het dynamische bereik wordt vergroot." + ], + "Prevent system sleep-circle-help": [ + "Wanneer ingeschakeld, voorkomt dit dat het systeem in slaapstand gaat terwijl Chirpity in gebruik is." + ], + "Send Filtered Audio-circle-help": [ + "Het verzenden van High Pass- of Low Shelf-gefilterde audio naar een model heeft meestal een negatieve invloed op de nauwkeurigheid. Gebruik deze optie met voorzichtigheid!" + ], + "Show frequency labels-circle-help": [ + "Wanneer ingeschakeld, toont het spectrogram de frequentie aan de linkerkant." + ], + "Signal to Noise Ratio-circle-help": [ + "De SNR-filter, wanneer ingeschakeld, slaat delen van audio over waarbij een audio-evenement onder de drempel ligt. Hogere waarden slaan steeds luidruchtiger segmenten over. Hoewel dit resulteert in snellere verwerking, moet het als experimenteel worden beschouwd en kunnen detecties worden gemist bij elke niet-nulwaarde. Tip: Om een werkbare SNR-waarde te vinden, analyseer een kort bestand met de zwakste detecties die je met vertrouwen kunt identificeren. Verhoog de SNR-waarde totdat de detectie niet wordt opgepikt. Zodra je deze drempel hebt gevonden, verlaag je het naar het hoogste niveau dat de detectie oppikt." + ], + "Species Threshold-circle-help": [ + "Definieer de minimale eBird-checklistfrequentie voor soorteninclusie. Als 'Lijst aanpassen voor de week van het jaar' is ingeschakeld, wordt de lijst aangepast om soorten op te nemen die worden verwacht voor de opnamenweek." + ], + "Threads-circle-help": [ + "Het aantal parallelle analyses om uit te voeren. Standaard wordt dit ingesteld op het aantal CPU-kernen op de machine voor de snelste prestaties. Bij gebruik van de GPU-backend werkt een lager aantal beter, bijvoorbeeld 1-3." + ], + "Use Location settings-circle-help": [ + "Wanneer ingeschakeld, rapporteert het filter voor nachtelijke vogels vogels op basis van je locatie-instellingen." + ], + "Volume Adjustment-circle-help": [ + "Pas het volume van audio aan om lage opnamevolumes te compenseren." + ], + "navBarFile": ["Bestand"], + "navbarHelp": ["Help"], + "navbarRecords": ["Records"], + "navbarAnalysis": ["Analyse"], + "navbarSettings": ["Instellingen"], + "open-file": [ + "Open Audio Bestand(en)", + "Ctrl+O" + ], + "open-folder": [ + "Open Map(pen)" + ], + "saveCSV": [ + "Exporteer Resultaten naar CSV" + ], + "save-eBird": [ + "Exporteer eBird Record bestand" + ], + "save-Raven": [ + "Exporteer Raven Selectie Tabel" + ], + "export-audio": [ + "Exporteer Geselecteerd Audio", + "Ctrl+E" + ], + "saveLabels": [ + "Sla Audacity Labels op" + ], + "exit": [ + "Afsluiten" + ], + "save2db": [ + "Opslaan naar Archief", + "Ctrl+S" + ], + "charts": [ + "Bekijk grafieken" + ], + "explore": [ + "Verken Archief" + ], + "active-analysis": [ + "Terug naar Actieve Analyse" + ], + "compress-and-organise": [ + "Sla Audio van Archief Resultaten op naar Bibliotheek" + ], + "purge-file": [ + "Verwijder Huidig Bestand uit Archief" + ], + "analyse": [ + "Analyseer Huidig Bestand", + "Ctrl+A" + ], + "analyseSelection": [ + "Analyseer Geselecteerd Interval" + ], + "analyseAll": [ + "Analyseer Alle Open Bestanden", + "Ctrl+Shift+A" + ], + "reanalyse": [ + "Hernanalyseer Huidig Bestand" + ], + "reanalyseAll": [ + "Hernanalyseer Alle Open Bestanden" + ], + "usage": [ + "Chirpity Gebruiken" + ], + "settingsHelp": [ + "Instellingen" + ], + "keyboardHelp": [ + "Toetsenbord Sneltoetsen" + ], + "diagnostics": [ + "Diagnostiek" + ], + "startTour": [ + "Toon Rondleiding" + ], + "bugs": [ + "Word lid van de community" + ], + "FAQ": [ + "FAQs" + ], + "species": [ + "Welke soorten worden gedetecteerd?" + ], + "eBird": [ + "Wat is een eBird Record?" + ], + "update-progress": [ + "Downloaden van update:" + ] + +} diff --git a/I18n/index.pt.json b/I18n/index.pt.json new file mode 100644 index 00000000..73cf4cda --- /dev/null +++ b/I18n/index.pt.json @@ -0,0 +1,192 @@ +{ + "Add to Library on Save-circle-help": [ + "Quando ativada, os ficheiros de áudio são adicionados à localização da biblioteca sempre que as deteções são guardadas no arquivo." + ], + "Adjust font size-circle-help": [ + "Altere as definições globais do tamanho da fonte para a aplicação." + ], + "Audio Library-circle-help": [ + "O Chirpity pode organizar o seu áudio numa biblioteca permanente num local à sua escolha, como um disco de dados ou uma unidade de rede. Uma vez guardados, pode eliminar os ficheiros originais, e todos os registos serão visíveis na aplicação. Para guardar áudio na biblioteca, pode aceder ao menu Registos e escolher 'Guardar Áudio dos Resultados do Arquivo na Biblioteca' ou ativar a opção 'Adicionar à Biblioteca ao Guardar' abaixo. Os ficheiros serão armazenados na seguinte estrutura:

Local de Gravação / Ano / Mês / Nome do Ficheiro

O áudio 'com perdas' requer cerca de 1GB de armazenamento por cada 24 horas, enquanto o áudio 'sem perdas' converte os ficheiros para o formato FLAC, preservando a fidelidade original, taxa de bits e canais, mas reduzindo aproximadamente para metade o tamanho do ficheiro." + ], + "Audio notification-circle-help": [ + "Quando ativada, haverá uma notificação do sistema quando análises que demoram mais de trinta segundos estiverem concluídas." + ], + "Backend-circle-help": [ + "Os backends webGL/webGPU podem melhorar o desempenho e reduzir o consumo de energia em alguns sistemas." + ], + "Batch Size-circle-help": [ + "Otimizar o tamanho do lote pode aumentar a velocidade de processamento em ficheiros longos." + ], + "Clear Call Cache-circle-help": [ + "Os dados utilizados para as comparações de chamadas de referência são armazenados em cache. Limpar a cache atualizará as chamadas de cada espécie na próxima vez que for solicitada uma comparação." + ], + "Confidence Threshold-circle-help": [ + "Determina a confiança mínima necessária para que os resultados sejam retornados." + ], + "Context Mode-circle-help": [ + "Quando ativado, o modo de contexto adapta as previsões ao analisar o contexto circundante. Só pode ser alterado antes de uma análise, e é recomendado um limiar de confiança inicial baixo, por exemplo, 20-30%. O modo de contexto não está disponível no modelo BirdNET." + ], + "Crop Library-circle-help": [ + "Quando ativada, os ficheiros de áudio que contêm períodos diurnos são recortados, guardando apenas o áudio correspondente aos períodos noturnos." + ], + "Debug Mode-circle-help": [ + "Entre no modo de depuração (as alterações nesta configuração requerem o reinício do Chirpity para ter efeito)." + ], + "Decorators-circle-help": [ + "'Pad' adiciona 2 segundos antes e depois de uma seleção ao áudio exportado. 'Fade' adiciona um efeito de desvanecimento de 1 segundo ao início e ao fim do áudio." + ], + "Default Location-circle-help": [ + "O Chirpity utiliza informações de localização para determinar os horários de amanhecer e anoitecer das gravações." + ], + "Default Settings-circle-help": [ + "Redefina as configurações para os valores padrão. Nota: Reinicie o Chirpity para ver as alterações. Além disso, as configurações de idioma precisarão ser ajustadas manualmente." + ], + "Down mix-circle-help": [ + "Quando ativada, o áudio exportado será misturado para mono." + ], + "High Pass Filter-circle-help": [ + "Quando configurado, remove o ruído de baixa frequência abaixo do limiar." + ], + "IUCN-circle-help": [ + "Quando ativada, o estado mais recente da avaliação global da IUCN é exibido para cada espécie no resumo. O ícone liga à página de avaliação no site da IUCN. O Escopo da Avaliação exibirá a avaliação da espécie nessa região (quando disponível)." + ], + "Language-circle-help": [ + "Selecione o seu idioma preferido para os nomes comuns das aves." + ], + "List-circle-help": [ + "Filtra as deteções retornadas nos resultados. Aves locais: exclui aves que provavelmente não estão presentes na sua região. Aves noturnas: exclui cantos de aves e espécies que não são conhecidas por chamar à noite. A lista personalizada permite enviar um ficheiro que lista as espécies a detetar." + ], + "Low Shelf Filter-circle-help": [ + "Quando utilizado, atenua o ruído de baixa frequência abaixo da frequência de corte." + ], + "Model-circle-help": [ + "Selecione se deseja usar o modelo Nocmig, otimizado para Chamadas de Migração Noturna na Europa, ou BirdNET, que pode detetar mais de 6000 espécies em todo o mundo." + ], + "Nocmig Mode-circle-help": [ + "Quando ativado, este 'modo Nocmig' apenas procura e exibe deteções encontradas durante a noite." + ], + "Normalise-circle-help": [ + "Quando ativada, o áudio que ouvir será normalizado, ampliando o alcance dinâmico." + ], + "Prevent system sleep-circle-help": [ + "Quando ativada, impede que o sistema entre em suspensão enquanto o Chirpity está em uso." + ], + "Send Filtered Audio-circle-help": [ + "Enviar áudio filtrado com High Pass ou Low Shelf para um modelo geralmente terá um impacto negativo na sua precisão. Use esta opção com precaução!" + ], + "Show frequency labels-circle-help": [ + "Quando ativada, o espectrograma exibirá a frequência no lado esquerdo." + ], + "Signal to Noise Ratio-circle-help": [ + "O filtro SNR, quando ativado, ignorará porções de áudio onde qualquer evento de áudio esteja abaixo do limiar. Valores mais altos ignoram segmentos progressivamente mais ruidosos. Apesar de resultar em processamento mais rápido, deve ser considerado experimental, e qualquer valor acima de zero pode levar à perda de deteções. Dica: Para encontrar um valor SNR adequado, execute uma análise num ficheiro curto com as deteções mais fracas que conseguir identificar com confiança. Aumente o valor SNR até que a deteção não seja captada. Depois de encontrar esse limiar, reduza-o para o nível mais alto que capte a deteção." + ], + "Species Threshold-circle-help": [ + "Defina a frequência mínima da lista de verificação do eBird para a inclusão de espécies. Se 'Ajustar lista para a semana do ano' estiver ativado, a lista será ajustada para incluir as espécies esperadas na semana da gravação." + ], + "Threads-circle-help": [ + "O número de análises paralelas a executar. Por padrão, está configurado para o número de núcleos de CPU da máquina para desempenho mais rápido. Com o backend de GPU, um número menor funciona melhor, por exemplo, 1-3." + ], + "Use Location settings-circle-help": [ + "Quando ativada, o filtro de Aves Noturnas relata as aves com base nas configurações de localização." + ], + "Volume Adjustment-circle-help": [ + "Ajuste o volume do áudio para compensar os níveis baixos de gravação." + ], + "navBarFile": ["Arquivo"], + "navbarHelp": ["Ajuda"], + "navbarRecords": ["Registros"], + "navbarAnalysis": ["Análise"], + "navbarSettings": ["Configurações"], + "open-file": [ + "Abrir Arquivo(s) de Áudio", + "Ctrl+O" + ], + "open-folder": [ + "Abrir Pasta(s)" + ], + "saveCSV": [ + "Exportar Resultados para CSV" + ], + "save-eBird": [ + "Exportar Arquivo de Registro eBird" + ], + "save-Raven": [ + "Exportar Tabela de Seleção Raven" + ], + "export-audio": [ + "Exportar Áudio Selecionado", + "Ctrl+E" + ], + "saveLabels": [ + "Salvar Rótulos Audacity" + ], + "exit": [ + "Sair" + ], + "save2db": [ + "Salvar no Arquivo", + "Ctrl+S" + ], + "charts": [ + "Ver Gráficos" + ], + "explore": [ + "Explorar Arquivo" + ], + "active-analysis": [ + "Voltar para a Análise Ativa" + ], + "compress-and-organise": [ + "Salvar Áudio dos Resultados do Arquivo para a Biblioteca" + ], + "purge-file": [ + "Remover Arquivo Atual do Arquivo" + ], + "analyse": [ + "Analisar Arquivo Atual", + "Ctrl+A" + ], + "analyseSelection": [ + "Analisar Intervalo Selecionado" + ], + "analyseAll": [ + "Analisar Todos os Arquivos Abertos", + "Ctrl+Shift+A" + ], + "reanalyse": [ + "Reanalisar Arquivo Atual" + ], + "reanalyseAll": [ + "Reanalisar Todos os Arquivos Abertos" + ], + "usage": [ + "Usando o Chirpity" + ], + "settingsHelp": [ + "Configurações" + ], + "keyboardHelp": [ + "Atalhos de Teclado" + ], + "diagnostics": [ + "Diagnósticos" + ], + "startTour": [ + "Mostrar Tour" + ], + "bugs": [ + "Junte-se à comunidade" + ], + "FAQ": [ + "FAQs" + ], + "species": [ + "Quais espécies são detectadas?" + ], + "eBird": [ + "O que é um Registro eBird?" + ], + "update-progress": [ + "Baixando atualização:" + ] +} diff --git a/I18n/index.ru.json b/I18n/index.ru.json new file mode 100644 index 00000000..74ac043a --- /dev/null +++ b/I18n/index.ru.json @@ -0,0 +1,193 @@ +{ + "Add to Library on Save-circle-help": [ + "При включении аудиофайлы добавляются в библиотеку, когда обнаружения сохраняются в архив." + ], + "Adjust font size-circle-help": [ + "Измените глобальные настройки размера шрифта для приложения." + ], + "Audio Library-circle-help": [ + "Chirpity может организовать вашу аудиоколлекцию в постоянную библиотеку в выбранном вами месте, например на диске данных или сетевом хранилище. После сохранения вы можете удалить оригинальные файлы, а все записи будут доступны для просмотра в приложении. Чтобы сохранить аудио в библиотеку, вы можете перейти в меню 'Records' и выбрать 'Save Audio from Archive Results to Library' или включить опцию 'Add to Library on Save' ниже. Файлы будут сохранены в следующей структуре:

Место записи / Год / Месяц / Имя файла

'Сжатый' звук требует около 1 ГБ памяти на 24 часа, а 'Без потерь' конвертирует файлы в формат FLAC, сохраняя оригинальное качество, битрейт и каналы, но уменьшая размер примерно вдвое." + ], + "Audio notification-circle-help": [ + "При включении система будет отправлять уведомление после завершения анализа, который длится более тридцати секунд." + ], + "Backend-circle-help": [ + "Бэкэнды webGL/webGPU могут улучшить производительность и снизить энергопотребление на некоторых системах." + ], + "Batch Size-circle-help": [ + "Оптимизация размера пакета может увеличить скорость обработки длинных файлов." + ], + "Clear Call Cache-circle-help": [ + "Данные, используемые для сравнения эталонных вызовов, кэшируются. Очистка кэша обновит вызовы для каждого вида при следующем запросе сравнения." + ], + "Confidence Threshold-circle-help": [ + "Определяет минимальный уровень уверенности, необходимый для возвращения результатов." + ], + "Context Mode-circle-help": [ + "При включении режим контекста адаптирует предсказания, анализируя окружающий контекст. Этот параметр можно изменить только до начала анализа, а для начального уровня уверенности рекомендуется низкий порог, например 20-30%. Контекстный режим недоступен в модели BirdNET." + ], + "Crop Library-circle-help": [ + "При включении аудиофайлы, содержащие дневные периоды, обрезаются, и сохраняется только ночной аудио." + ], + "Debug Mode-circle-help": [ + "Вход в режим отладки (изменения этого параметра требуют перезапуска Chirpity для вступления в силу)." + ], + "Decorators-circle-help": [ + "'Pad' добавляет 2 секунды до и после выделения к экспортированному аудио. 'Fade' добавляет 1-секундный эффект затухания в начале и в конце аудио." + ], + "Default Location-circle-help": [ + "Chirpity использует информацию о местоположении для определения времени рассвета и заката для записей." + ], + "Default Settings-circle-help": [ + "Сбросьте настройки конфигурации на значения по умолчанию. Примечание: Перезапустите Chirpity, чтобы изменения вступили в силу. Настройки языка нужно будет установить вручную." + ], + "Down mix-circle-help": [ + "При включении экспортированный звук будет смешан в моно." + ], + "High Pass Filter-circle-help": [ + "При настройке удаляет низкочастотный шум ниже установленного порога." + ], + "IUCN-circle-help": [ + "При включении отображается актуальный статус оценки IUCN для каждого вида в сводке. Значок ведет на страницу оценки на сайте IUCN. Область оценки показывает региональную оценку вида (если доступно)." + ], + "Language-circle-help": [ + "Выберите предпочитаемый язык для общепринятых названий птиц." + ], + "List-circle-help": [ + "Фильтрует обнаружения, отображаемые в результатах. 'Местные птицы': исключает птиц, которых маловероятно встретить в вашем регионе. 'Ночные птицы': исключает пение птиц и виды, не издающие звуков ночью. В пользовательский список можно загрузить файл со списком видов для обнаружения." + ], + "Low Shelf Filter-circle-help": [ + "При использовании уменьшает низкочастотный шум ниже частоты среза." + ], + "Model-circle-help": [ + "Выберите, использовать ли модель Nocmig, оптимизированную для ночной миграции в Европе, или BirdNET, которая может обнаруживать более 6000 видов по всему миру." + ], + "Nocmig Mode-circle-help": [ + "При включении этот режим 'Nocmig' ищет и отображает только обнаружения, сделанные ночью." + ], + "Normalise-circle-help": [ + "При включении звук будет нормализован, расширяя динамический диапазон." + ], + "Prevent system sleep-circle-help": [ + "При включении предотвращает переход системы в режим сна, пока используется Chirpity." + ], + "Send Filtered Audio-circle-help": [ + "Передача звука с фильтрацией High Pass или Low Shelf в модель обычно снижает ее точность. Используйте эту опцию с осторожностью!" + ], + "Show frequency labels-circle-help": [ + "При включении на спектрограмме будет отображаться частота слева." + ], + "Signal to Noise Ratio-circle-help": [ + "Фильтр SNR, при включении, будет пропускать части аудио, где любой звуковой сигнал ниже порога. Более высокие значения пропускают более шумные сегменты. Хотя это приведет к более быстрой обработке, это считается экспериментальной функцией, и любое ненулевое значение может пропустить обнаружения. Совет: Чтобы найти подходящее значение SNR, проанализируйте короткий файл с самыми слабыми обнаружениями, которые вы можете уверенно идентифицировать. Увеличивайте значение SNR, пока обнаружение не перестанет фиксироваться. Как только вы найдете этот порог, уменьшите его до самого высокого уровня, который фиксирует обнаружение." + ], + "Species Threshold-circle-help": [ + "Определите минимальную частоту появления вида в контрольных списках eBird для включения. Если включена опция 'Adjust list for the week of the year', список будет корректироваться для видов, ожидаемых в неделю записи." + ], + "Threads-circle-help": [ + "Количество параллельных анализов. По умолчанию установлено равным числу ядер процессора для максимальной производительности. При использовании GPU-бэкэнда лучше установить меньшее значение, например 1-3." + ], + "Use Location settings-circle-help": [ + "При включении фильтр 'Ночные птицы' учитывает настройки местоположения." + ], + "Volume Adjustment-circle-help": [ + "Отрегулируйте громкость аудио для компенсации низкого уровня записи." + ], + "navBarFile": ["Файл"], + "navbarHelp": ["Помощь"], + "navbarRecords": ["Записи"], + "navbarAnalysis": ["Анализ"], + "navbarSettings": ["Настройки"], + "open-file": [ + "Открыть аудиофайл(ы)", + "Ctrl+O" + ], + "open-folder": [ + "Открыть папку(и)" + ], + "saveCSV": [ + "Экспортировать результаты в CSV" + ], + "save-eBird": [ + "Экспортировать файл записи eBird" + ], + "save-Raven": [ + "Экспортировать таблицу выбора Raven" + ], + "export-audio": [ + "Экспортировать выбранное аудио", + "Ctrl+E" + ], + "saveLabels": [ + "Сохранить метки Audacity" + ], + "exit": [ + "Выход" + ], + "save2db": [ + "Сохранить в архив", + "Ctrl+S" + ], + "charts": [ + "Просмотреть графики" + ], + "explore": [ + "Изучить архив" + ], + "active-analysis": [ + "Вернуться к активному анализу" + ], + "compress-and-organise": [ + "Сохранить аудио из результатов архива в библиотеку" + ], + "purge-file": [ + "Удалить текущий файл из архива" + ], + "analyse": [ + "Анализировать текущий файл", + "Ctrl+A" + ], + "analyseSelection": [ + "Анализировать выбранный интервал" + ], + "analyseAll": [ + "Анализировать все открытые файлы", + "Ctrl+Shift+A" + ], + "reanalyse": [ + "Повторный анализ текущего файла" + ], + "reanalyseAll": [ + "Повторный анализ всех открытых файлов" + ], + "usage": [ + "Использование Chirpity" + ], + "settingsHelp": [ + "Настройки" + ], + "keyboardHelp": [ + "Горячие клавиши" + ], + "diagnostics": [ + "Диагностика" + ], + "startTour": [ + "Показать тур" + ], + "bugs": [ + "Присоединиться к сообществу" + ], + "FAQ": [ + "Часто задаваемые вопросы" + ], + "species": [ + "Какие виды были обнаружены?" + ], + "eBird": [ + "Что такое запись eBird?" + ], + "update-progress": [ + "Загрузка обновления:" + ] + +} diff --git a/I18n/index.sv.json b/I18n/index.sv.json new file mode 100644 index 00000000..2db88251 --- /dev/null +++ b/I18n/index.sv.json @@ -0,0 +1,192 @@ +{ + "Add to Library on Save-circle-help": [ + "När aktiverat, läggs ljudfiler till i bibliotekets plats när detekteringar sparas till arkivet." + ], + "Adjust font size-circle-help": [ + "Ändra de globala teckensnittsstorleksinställningarna för applikationen." + ], + "Audio Library-circle-help": [ + "Chirpity kan organisera ditt ljud i ett permanent bibliotek på en plats du väljer, såsom en datadisk eller nätverksenhet. När det är sparat kan du ta bort originalfilerna, och alla poster kommer att vara synliga i applikationen. För att spara ljud i biblioteket kan du antingen gå till menyn Poster och välja 'Spara ljud från arkivresultat till bibliotek', eller aktivera alternativet 'Lägg till i bibliotek vid sparande' nedan. Filer kommer att lagras i följande struktur:

Inspelningsplats / År / Månad / Filnamn

'Lossy' ljud kräver cirka 1 GB lagring per 24 timmar, medan 'Lossless' konverterar filer till FLAC-format, vilket bevarar original kvalitet, bitrate och kanaler, men ungefär halverar filstorleken." + ], + "Audio notification-circle-help": [ + "När aktiverat, kommer det finnas en systemavisering när analyser som tar över trettio sekunder är färdiga." + ], + "Backend-circle-help": [ + "WebGL/webGPU-backend kan förbättra prestandan och minska strömförbrukningen på vissa system." + ], + "Batch Size-circle-help": [ + "Optimera batchstorleken kan öka bearbetningshastigheten för längre filer." + ], + "Clear Call Cache-circle-help": [ + "Data som används för referensanrop jämförelser cachas. Att rensa cachen uppdaterar anropen för varje art nästa gång en jämförelse begärs." + ], + "Confidence Threshold-circle-help": [ + "Bestämmer den minimala säkerheten som krävs för att resultat ska returneras." + ], + "Context Mode-circle-help": [ + "När aktiverat, anpassar kontextläge förutsägelser genom att analysera omgivande kontext. Det kan endast ändras före en analys, och en låg initial säkerhetsgräns rekommenderas, t.ex. 20-30%. Kontextläge är inte tillgängligt i BirdNET-modellen." + ], + "Crop Library-circle-help": [ + "När aktiverat, beskärs ljudfiler som innehåller dagtidsperioder, så att ljudet endast sparas för nattliga perioder." + ], + "Debug Mode-circle-help": [ + "Ange felsökningsläge (ändringar i denna inställning kräver en omstart av Chirpity för att träda i kraft)." + ], + "Decorators-circle-help": [ + "'Pad' lägger till 2 sekunder före och efter ett urval till det exporterade ljudet. 'Fade' lägger till en 1-sekunders fade-effekt i början och slutet av ljudet." + ], + "Default Location-circle-help": [ + "Chirpity använder platsinformation för att fastställa gryning och skymningstider för inspelningar." + ], + "Default Settings-circle-help": [ + "Återställ konfigurationsinställningarna till deras standardvärden. OBS. Starta om Chirpity för att se ändringarna, dessutom måste språkinställningarna ställas in manuellt igen." + ], + "Down mix-circle-help": [ + "När aktiverat, kommer exporterade ljud att mixas ned till mono." + ], + "High Pass Filter-circle-help": [ + "När inställt, tar bort lågfrekvent brus under tröskelvärdet." + ], + "IUCN-circle-help": [ + "När aktiverat, visas den senaste globala IUCN-bedömningsstatusen för varje art i sammanfattningen. Ikonen länkar till bedömningssidan på IUCN:s webbplats. Bedömningsområdet visar IUCN-bedömningen av arten i den regionen (om tillgänglig)." + ], + "Language-circle-help": [ + "Välj ditt föredragna språk för fåglars vanliga namn." + ], + "List-circle-help": [ + "Filtrerar de detektioner som returneras i resultaten. Lokala fåglar: utesluter fåglar som är osannolika att hittas i din region. Nattliga fåglar: utesluter fågelsång och arter som inte är kända för att ropa på natten. Den anpassade listan låter dig ladda upp en fil som listar de arter som ska detekteras." + ], + "Low Shelf Filter-circle-help": [ + "När använt, dämpar lågfrekvent brus under gränsfrekvensen." + ], + "Model-circle-help": [ + "Välj om du vill använda Nocmig-modellen, optimerad för nattliga migrationsanrop i Europa, eller BirdNET, som kan detektera över 6000 arter över hela världen." + ], + "Nocmig Mode-circle-help": [ + "När aktiverat, söker detta 'Nocmig-läge' endast efter och visar endast detekteringar som hittas under natten." + ], + "Normalise-circle-help": [ + "När aktiverat, kommer ljudet du hör att normaliseras, vilket utökar det dynamiska omfånget." + ], + "Prevent system sleep-circle-help": [ + "När aktiverat, förhindrar att systemet går i viloläge medan Chirpity används." + ], + "Send Filtered Audio-circle-help": [ + "Att skicka högpass- eller lågshelf-filtrerat ljud till en modell har vanligtvis en negativ inverkan på dess noggrannhet. Använd detta alternativ med försiktighet!" + ], + "Show frequency labels-circle-help": [ + "När aktiverat, kommer spektrogrammet att visa frekvensen på vänster sida." + ], + "Signal to Noise Ratio-circle-help": [ + "SNR-filtret, när det är aktiverat, hoppar över delar av ljud där något ljudhändelse är under tröskelvärdet. Högre värden hoppar över allt mer bullriga segment. Även om detta resulterar i snabbare bearbetning måste det betraktas som experimentellt och vilket som helst icke-nollvärde kan missa detekteringar. Tips: För att hitta ett fungerande SNR-värde, kör analys på en kort fil med de svagaste detektionerna du kan identifiera med säkerhet. Öka SNR-värdet tills detektionen inte plockas upp. När du hittar denna tröskel, backa det till den högsta nivån som plockar upp detektionen." + ], + "Species Threshold-circle-help": [ + "Definiera den minsta eBird-checklistans frekvens för artinkludering. Om 'Justera lista för årets vecka' är aktiverad, justeras listan för att inkludera arter förväntade för inspelningsveckan." + ], + "Threads-circle-help": [ + "Antalet parallella analyser att köra. Som standard är detta inställt på antalet CPU-kärnor på maskinen för snabbast prestanda. Med GPU-backend fungerar ett lägre antal bättre, t.ex. 1-3." + ], + "Use Location settings-circle-help": [ + "När aktiverat, rapporterar filtret för nattliga fåglar arter baserat på dina platsinställningar." + ], + "Volume Adjustment-circle-help": [ + "Justera ljudvolymen för att kompensera för låga inspelningsnivåer." + ], + "navBarFile": ["Fil"], + "navbarHelp": ["Hjälp"], + "navbarRecords": ["Poster"], + "navbarAnalysis": ["Analys"], + "navbarSettings": ["Inställningar"], + "open-file": [ + "Öppna ljudfil(er)", + "Ctrl+O" + ], + "open-folder": [ + "Öppna mapp(er)" + ], + "saveCSV": [ + "Exportera resultat till CSV" + ], + "save-eBird": [ + "Exportera eBird registerfil" + ], + "save-Raven": [ + "Exportera Raven urvalstabell" + ], + "export-audio": [ + "Exportera vald ljudfil", + "Ctrl+E" + ], + "saveLabels": [ + "Spara Audacity etiketter" + ], + "exit": [ + "Avsluta" + ], + "save2db": [ + "Spara till arkiv", + "Ctrl+S" + ], + "charts": [ + "Visa diagram" + ], + "explore": [ + "Utforska arkiv" + ], + "active-analysis": [ + "Återgå till aktiv analys" + ], + "compress-and-organise": [ + "Spara ljud från arkivresultat till bibliotek" + ], + "purge-file": [ + "Ta bort aktuell fil från arkivet" + ], + "analyse": [ + "Analysera aktuell fil", + "Ctrl+A" + ], + "analyseSelection": [ + "Analysera valt intervall" + ], + "analyseAll": [ + "Analysera alla öppna filer", + "Ctrl+Shift+A" + ], + "reanalyse": [ + "Re-analysera aktuell fil" + ], + "reanalyseAll": [ + "Re-analysera alla öppna filer" + ], + "usage": [ + "Använda Chirpity" + ], + "settingsHelp": [ + "Inställningar" + ], + "keyboardHelp": [ + "Tangentbordsgenvägar" + ], + "diagnostics": [ + "Diagnostik" + ], + "startTour": [ + "Visa tur" + ], + "bugs": [ + "Gå med i communityn" + ], + "FAQ": [ + "Vanliga frågor" + ], + "species": [ + "Vilka arter har upptäckts?" + ], + "eBird": [ + "Vad är en eBird-register?" + ], + "update-progress": [ + "Laddar ner uppdatering:" + ] +} diff --git a/I18n/index.zh.json b/I18n/index.zh.json new file mode 100644 index 00000000..f891fa87 --- /dev/null +++ b/I18n/index.zh.json @@ -0,0 +1,192 @@ +{ + "Add to Library on Save-circle-help": [ + "启用后,每当将检测结果保存到存档时,音频文件将添加到库位置中。" + ], + "Adjust font size-circle-help": [ + "更改应用程序的全局字体大小设置。" + ], + "Audio Library-circle-help": [ + "Chirpity 可以将您的音频组织成一个永久的库,存放在您选择的位置,例如数据磁盘或网络驱动器。一旦保存,您可以删除原始文件,所有记录将在应用程序中可见。要将音频保存到库中,您可以前往记录菜单并选择“从存档结果保存音频到库”,或启用下方的“保存时添加到库”选项。文件将按以下结构存储:

录音地点 / 年 / 月 / 文件名

‘有损’音频每 24 小时需要约 1GB 的存储空间,而‘无损’将文件转换为 FLAC 格式,保留原始的保真度、比特率和声道,但文件大小大约减半。" + ], + "Audio notification-circle-help": [ + "启用后,当分析超过 30 秒时,系统会发出通知。" + ], + "Backend-circle-help": [ + "webGL/webGPU 后端可以在某些系统上提高性能并减少功耗。" + ], + "Batch Size-circle-help": [ + "优化批处理大小可以提高较长文件的处理速度。" + ], + "Clear Call Cache-circle-help": [ + "参考呼叫比较所使用的数据已被缓存。清除缓存将在下次请求比较时刷新每个物种的呼叫。" + ], + "Confidence Threshold-circle-help": [ + "确定返回结果所需的最低置信度。" + ], + "Context Mode-circle-help": [ + "启用后,情境模式通过分析周围的情境来调整预测。只能在分析之前更改,并建议设置较低的初始置信度,例如 20-30%。情境模式在 BirdNET 模型中不可用。" + ], + "Crop Library-circle-help": [ + "启用后,包含白天时间段的音频文件将被裁剪,只保留夜间的音频。" + ], + "Debug Mode-circle-help": [ + "进入调试模式(更改此设置需要重新启动 Chirpity 才能生效)。" + ], + "Decorators-circle-help": [ + "‘填充’在导出的音频的选择部分前后各添加 2 秒。‘淡化’在音频的开头和结尾添加 1 秒淡化效果。" + ], + "Default Location-circle-help": [ + "Chirpity 使用位置信息来确定录音的日出和日落时间。" + ], + "Default Settings-circle-help": [ + "将配置设置重置为默认值。注意:重新启动 Chirpity 以查看更改,同时需要手动重新设置语言设置。" + ], + "Down mix-circle-help": [ + "启用后,导出的音频将混音为单声道。" + ], + "High Pass Filter-circle-help": [ + "设置后,将移除低于阈值的低频噪音。" + ], + "IUCN-circle-help": [ + "启用后,摘要中将显示每个物种的最新全球 IUCN 评估状态。图标链接到 IUCN 网站上的评估页面。评估范围将显示该地区的物种 IUCN 评估(如果有)。" + ], + "Language-circle-help": [ + "选择您首选的鸟类常见名称的语言。" + ], + "List-circle-help": [ + "过滤结果中返回的检测项。地方鸟类:排除不太可能出现在您地区的鸟类。夜行鸟类:排除不以夜间鸣叫著称的鸟类和鸟鸣。自定义列表允许您上传列出需要检测的物种的文件。" + ], + "Low Shelf Filter-circle-help": [ + "启用后,将削弱低于截止频率的低频噪音。" + ], + "Model-circle-help": [ + "选择使用为欧洲夜间迁徙鸣声优化的 Nocmig 模型,或 BirdNET,它可以检测全球超过 6000 种物种。" + ], + "Nocmig Mode-circle-help": [ + "启用后,此‘Nocmig 模式’仅搜索并显示在夜间找到的检测结果。" + ], + "Normalise-circle-help": [ + "启用后,您听到的音频将被标准化,扩展动态范围。" + ], + "Prevent system sleep-circle-help": [ + "启用后,在使用 Chirpity 时防止系统进入睡眠状态。" + ], + "Send Filtered Audio-circle-help": [ + "将高通或低搁架滤波后的音频发送到模型通常会对其准确性产生负面影响。请谨慎使用此选项!" + ], + "Show frequency labels-circle-help": [ + "启用后,频谱图将在左侧显示频率。" + ], + "Signal to Noise Ratio-circle-help": [ + "启用 SNR 滤波器后,会跳过音频中任何音频事件低于阈值的部分。较高的值会跳过噪声更大的部分。虽然这会加快处理速度,但必须被视为实验性,且任何非零值都可能遗漏检测。提示:要找到合适的 SNR 值,请对您可以自信识别的最微弱检测运行短文件分析。增加 SNR 值直到未拾取检测。一旦找到该阈值,将其降低到仍能拾取检测的最高水平。" + ], + "Species Threshold-circle-help": [ + "定义物种包含的最低 eBird 检查表频率。如果启用了‘根据年份周调整列表’,则会调整列表以包含录音周内预期的物种。" + ], + "Threads-circle-help": [ + "运行并行分析的线程数。默认情况下,这设置为计算机上的 CPU 核心数以实现最快性能。使用 GPU 后端时,较低的线程数效果更好,例如 1-3。" + ], + "Use Location settings-circle-help": [ + "激活后,夜行鸟类过滤器将基于您的位置设置报告鸟类。" + ], + "Volume Adjustment-circle-help": [ + "调整音量以补偿低录音电平。" + ], + "navBarFile": ["文件"], + "navbarHelp": ["帮助"], + "navbarRecords": ["记录"], + "navbarAnalysis": ["分析"], + "navbarSettings": ["设置"], + "open-file": [ + "打开音频文件", + "Ctrl+O" + ], + "open-folder": [ + "打开文件夹" + ], + "saveCSV": [ + "将结果导出为CSV" + ], + "save-eBird": [ + "导出eBird记录文件" + ], + "save-Raven": [ + "导出Raven选择表" + ], + "export-audio": [ + "导出选定的音频", + "Ctrl+E" + ], + "saveLabels": [ + "保存Audacity标签" + ], + "exit": [ + "退出" + ], + "save2db": [ + "保存到档案", + "Ctrl+S" + ], + "charts": [ + "查看图表" + ], + "explore": [ + "浏览档案" + ], + "active-analysis": [ + "返回到活动分析" + ], + "compress-and-organise": [ + "将档案结果中的音频保存到库中" + ], + "purge-file": [ + "从档案中删除当前文件" + ], + "analyse": [ + "分析当前文件", + "Ctrl+A" + ], + "analyseSelection": [ + "分析选定的区间" + ], + "analyseAll": [ + "分析所有打开的文件", + "Ctrl+Shift+A" + ], + "reanalyse": [ + "重新分析当前文件" + ], + "reanalyseAll": [ + "重新分析所有打开的文件" + ], + "usage": [ + "使用Chirpity" + ], + "settingsHelp": [ + "设置" + ], + "keyboardHelp": [ + "键盘快捷键" + ], + "diagnostics": [ + "诊断" + ], + "startTour": [ + "显示导览" + ], + "bugs": [ + "加入社区" + ], + "FAQ": [ + "常见问题" + ], + "species": [ + "检测到哪些物种?" + ], + "eBird": [ + "什么是eBird记录?" + ], + "update-progress": [ + "正在下载更新:" + ] +} diff --git a/I18n/keyboard.da.json b/I18n/keyboard.da.json new file mode 100644 index 00000000..1a826d24 --- /dev/null +++ b/I18n/keyboard.da.json @@ -0,0 +1,95 @@ +{ + "file-handling": [ + "Filhåndtering" + ], + "show-file-open": [ + "Vis filåbningsdialog" + ], + "save-detections": [ + "Gem detektioner til rekordarkivet." + ], + "analysis": [ + "Analyse" + ], + "analyse-file": [ + "Analyser den aktuelle fil." + ], + "analyeALL": [ + "Analyser alle åbne filer." + ], + "stop-analysis": [ + "Stop analyse" + ], + "toggle-archive": [ + "Skift mellem at udforske arkivet og de nyeste analyseresultater. Dette giver dig mulighed for at sammenligne aktuelle detektioner med dem, du tidligere har optaget." + ], + "navigate-audio": [ + "Navigere i lyd" + ], + "play-pause": [ + "Skift mellem Afspil/Pause lyden" + ], + "play-region": [ + "Afspil den valgte region. Kun aktiv, hvis en region er valgt." + ], + "center-spec": [ + "Centrum spektrogrammet ved den aktuelle afspilningsposition. Desuden, hvis du dobbeltklikker med musen på et punkt i lyden, vil det centrere spektrogrammet på dette punkt." + ], + "go-to": [ + "Gå til position i filen" + ], + "file-begin": [ + "Flyt afspilningshovedet til begyndelsen af filen" + ], + "file-end": [ + "Flyt afspilningshovedet til slutningen af filen" + ], + "pageup": [ + "Flyt tilbage til den forrige periode i spektrogrammet. Du kan også bruge musens hjul eller et to-fingers swipe på trackpad'en." + ], + "pagedown": [ + "Flyt frem til den næste periode i spektrogrammet" + ], + "skip-forward": [ + "Flyt afspilningshovedet fremad." + ], + "skip-back": [ + "Flyt afspilningshovedet baglæns." + ], + "next-detection": [ + "Spring til næste detektion" + ], + "previous-detection": [ + "Spring tilbage til forrige detektion" + ], + "spec-adjust": [ + "Spektrogramjusteringer" + ], + "zoom-in": [ + "Zoom ind på spektrogrammet. Når du zoomer, justerer Chirpity automatisk korttids Fourier-transformvinduesstørrelsen for at optimere den spektrale opløsning" + ], + "zoom-out": [ + "Zoom ud på spektrogrammet. Når du zoomer, justerer Chirpity automatisk STFT-vinduesstørrelsen for at optimere den spektrale opløsning" + ], + "reduce-fft": [ + "Reducer manuelt spektrogramvinduesstørrelsen. Justering af vinduesstørrelsen vil skærpe/sudse kald i spektrogrammet." + ], + "increase-fft": [ + "Øg manuelt spektrogramvinduesstørrelsen" + ], + "timeline-toggle": [ + "Skift mellem tidskode og tidspunkt på dagen" + ], + "records": [ + "Poster" + ], + "delete": [ + "Slet aktuel post" + ], + "undo": [ + "Gendan slettede post(er)" + ], + "validate": [ + "Valider den aktuelle aktive post (bekræft detektionen)" + ] +} diff --git a/I18n/keyboard.de.json b/I18n/keyboard.de.json new file mode 100644 index 00000000..c3c424c0 --- /dev/null +++ b/I18n/keyboard.de.json @@ -0,0 +1,95 @@ +{ +"file-handling": [ + "Dateiverwaltung" + ], + "show-file-open": [ + "Dateiauswahldialog anzeigen" + ], + "save-detections": [ + "Erkenntnisse im Aufzeichnungsarchiv speichern." + ], + "analysis": [ + "Analyse" + ], + "analyse-file": [ + "Aktuelle Datei analysieren." + ], + "analyeALL": [ + "Alle offenen Dateien analysieren." + ], + "stop-analysis": [ + "Analyse stoppen" + ], + "toggle-archive": [ + "Zwischen Archiv durchsuchen und den neuesten Analyseergebnissen wechseln. Dies ermöglicht es, aktuelle Erkennungen mit denen zu vergleichen, die Sie zuvor aufgezeichnet haben." + ], + "navigate-audio": [ + "Audio navigieren" + ], + "play-pause": [ + "Wiedergabe/Pause des Audios umschalten" + ], + "play-region": [ + "Ausgewählte Region abspielen. Nur aktiv, wenn eine Region ausgewählt wurde." + ], + "center-spec": [ + "Spektrogramm auf die aktuelle Wiedergabeposition zentrieren. Wenn Sie außerdem mit der Maus doppelklicken, wird das Spektrogramm auf diesen Punkt zentriert." + ], + "go-to": [ + "Zur Position im Datei wechseln" + ], + "file-begin": [ + "Wiedergabekopf zum Anfang der Datei verschieben" + ], + "file-end": [ + "Wiedergabekopf zum Ende der Datei verschieben" + ], + "pageup": [ + "Zum vorherigen Zeitraum im Spektrogramm wechseln. Sie können auch das Mausrad oder eine Zwei-Finger-Wischbewegung auf dem Trackpad verwenden." + ], + "pagedown": [ + "Zum nächsten Zeitraum im Spektrogramm wechseln" + ], + "skip-forward": [ + "Wiedergabekopf nach vorne bewegen." + ], + "skip-back": [ + "Wiedergabekopf nach hinten bewegen." + ], + "next-detection": [ + "Zur nächsten Erkennung überspringen" + ], + "previous-detection": [ + "Zur vorherigen Erkennung zurückspringen" + ], + "spec-adjust": [ + "Spektrogrammanpassungen" + ], + "zoom-in": [ + "Spektrogramm vergrößern. Beim Vergrößern passt Chirpity automatisch die Fenstergröße der Kurzzeit-Fourier-Transformation (STFT) an, um die spektrale Auflösung zu optimieren" + ], + "zoom-out": [ + "Spektrogramm verkleinern. Beim Verkleinern passt Chirpity automatisch die Fenstergröße der STFT an, um die spektrale Auflösung zu optimieren" + ], + "reduce-fft": [ + "Manuell die Fenstergröße des Spektrogramms verringern. Die Anpassung der Fenstergröße hat den Effekt, die Anrufe im Spektrogramm zu schärfen oder zu verwischen." + ], + "increase-fft": [ + "Manuell die Fenstergröße des Spektrogramms vergrößern" + ], + "timeline-toggle": [ + "Zwischen Zeitcode und Tageszeit umschalten" + ], + "records": [ + "Datensätze" + ], + "delete": [ + "Aktuellen Datensatz löschen" + ], + "undo": [ + "Gelöschte(n) Datensatz/Datensätze wiederherstellen" + ], + "validate": [ + "Aktuellen aktiven Datensatz validieren (Erkennung bestätigen)" + ] +} diff --git a/I18n/keyboard.en.json b/I18n/keyboard.en.json new file mode 100644 index 00000000..b8566761 --- /dev/null +++ b/I18n/keyboard.en.json @@ -0,0 +1,95 @@ +{ + "file-handling": [ + "File Handling" + ], +"show-file-open": [ + "Show file open dialog" +], +"save-detections": [ + "Save detections to the records archive." +], +"analysis": [ + "Analysis" +], +"analyse-file": [ + "Analyse the current file." +], +"analyeALL": [ + "Analyse all open files." +], +"stop-analysis": [ + "Stop analysis" +], +"toggle-archive": [ + "Toggle between exploring the archive and the latest analysis results. This allows you to compare current detections with those you've previously recorded." +], +"navigate-audio": [ + "Navigating Audio" +], +"play-pause": [ + "Toggle Play/Pause the audio" +], +"play-region": [ + "Play the selected region. Only active if a region has been selected." +], +"center-spec": [ + "Centre the spectrogram at the current playhead position. Also, if you double-click the mouse at a point in the audio, it will centre the spectrogram at that point" +], +"go-to": [ + "Go to position in file" +], +"file-begin": [ + "Move the playhead to the beginning of the file" +], +"file-end": [ + "Move the playhead to the end of the file" +], +"pageup": [ + "Move back to the previous period in the spectrogram. You can also use the mouse wheel or two finger trackpad swipe." +], +"pagedown": [ + "Move forward to the next period in the spectrogram" +], +"skip-forward": [ + "Move the playhead forward." +], +"skip-back": [ + "Move the playhead backward." +], +"next-detection": [ + "Skip to the next detection" +], +"previous-detection": [ + "Skip back to the previous detection" +], +"spec-adjust": [ + "Spectrogram Adjustments" +], +"zoom-in": [ + "Zoom in on the spectrogram. When zooming, Chirpity automatically adjusts the short-time Fourier transform (STFT) window size to optimize the spectral resolution" +], +"zoom-out": [ + "Zoom out the spectrogram. When zooming, Chirpity automatically adjusts the STFT window size to optimize the spectral resolution" +], +"reduce-fft": [ + "Manually reduce the spectrogram window size. Adjusting the window size has the effect of sharpening / blurring the calls in the spectrogram." +], +"increase-fft": [ + "Manually increase the spectrogram window size" +], +"timeline-toggle": [ + "Toggle between Timecode and Time of Day" +], +"records": [ + "Records" +], +"delete": [ + "Delete current record" +], +"undo": [ + "Restore deleted record(s)" +], +"validate": [ + "Validate the current active record (confirm the detection)" +] +} \ No newline at end of file diff --git a/I18n/keyboard.es.json b/I18n/keyboard.es.json new file mode 100644 index 00000000..29a982b5 --- /dev/null +++ b/I18n/keyboard.es.json @@ -0,0 +1,96 @@ +{ + "file-handling": [ + "Gestión de archivos" + ], + "show-file-open": [ + "Mostrar el cuadro de diálogo de apertura de archivo" + ], + "save-detections": [ + "Guardar las detecciones en el archivo de registros." + ], + "analysis": [ + "Análisis" + ], + "analyse-file": [ + "Analizar el archivo actual." + ], + "analyeALL": [ + "Analizar todos los archivos abiertos." + ], + "stop-analysis": [ + "Detener el análisis" + ], + "toggle-archive": [ + "Alternar entre explorar el archivo y los resultados de análisis más recientes. Esto le permite comparar las detecciones actuales con las que ha grabado previamente." + ], + "navigate-audio": [ + "Navegar en el audio" + ], + "play-pause": [ + "Alternar reproducción/pausa del audio" + ], + "play-region": [ + "Reproducir la región seleccionada. Solo está activo si se ha seleccionado una región." + ], + "center-spec": [ + "Centrar el espectrograma en la posición actual del cabezal de reproducción. Además, si hace doble clic en un punto del audio, el espectrograma se centrará en ese punto." + ], + "go-to": [ + "Ir a la posición en el archivo" + ], + "file-begin": [ + "Mover el cabezal de reproducción al principio del archivo" + ], + "file-end": [ + "Mover el cabezal de reproducción al final del archivo" + ], + "pageup": [ + "Moverse hacia atrás a la periodo anterior en el espectrograma. También puede usar la rueda del ratón o el deslizamiento con dos dedos en el trackpad." + ], + "pagedown": [ + "Moverse hacia adelante al siguiente periodo en el espectrograma" + ], + "skip-forward": [ + "Mover el cabezal de reproducción hacia adelante." + ], + "skip-back": [ + "Mover el cabezal de reproducción hacia atrás." + ], + "next-detection": [ + "Saltar a la siguiente detección" + ], + "previous-detection": [ + "Saltar a la detección anterior" + ], + "spec-adjust": [ + "Ajustes del espectrograma" + ], + "zoom-in": [ + "Acercar el espectrograma. Al hacer zoom, Chirpity ajusta automáticamente el tamaño de la ventana de la transformada de Fourier de corto plazo (STFT) para optimizar la resolución espectral" + ], + "zoom-out": [ + "Alejar el espectrograma. Al hacer zoom, Chirpity ajusta automáticamente el tamaño de la ventana STFT para optimizar la resolución espectral" + ], + "reduce-fft": [ + "Reducir manualmente el tamaño de la ventana del espectrograma. Ajustar el tamaño de la ventana tiene el efecto de agudizar o difuminar las llamadas en el espectrograma." + ], + "increase-fft": [ + "Aumentar manualmente el tamaño de la ventana del espectrograma" + ], + "timeline-toggle": [ + "Alternar entre código de tiempo y hora del día" + ], + "records": [ + "Registros" + ], + "delete": [ + "Eliminar el registro actual" + ], + "undo": [ + "Restaurar el/los registro(s) eliminado(s)" + ], + "validate": [ + "Validar el registro activo actual (confirmar la detección)" + ] + } + \ No newline at end of file diff --git a/I18n/keyboard.fr.json b/I18n/keyboard.fr.json new file mode 100644 index 00000000..8cc28335 --- /dev/null +++ b/I18n/keyboard.fr.json @@ -0,0 +1,96 @@ +{ + "file-handling": [ + "Gestion des fichiers" + ], + "show-file-open": [ + "Afficher la boîte de dialogue d'ouverture de fichier" + ], + "save-detections": [ + "Enregistrer les détections dans l'archive des enregistrements." + ], + "analysis": [ + "Analyse" + ], + "analyse-file": [ + "Analyser le fichier actuel." + ], + "analyeALL": [ + "Analyser tous les fichiers ouverts." + ], + "stop-analysis": [ + "Arrêter l'analyse" + ], + "toggle-archive": [ + "Basculer entre l'exploration de l'archive et les derniers résultats d'analyse. Cela vous permet de comparer les détections actuelles avec celles que vous avez enregistrées précédemment." + ], + "navigate-audio": [ + "Navigation audio" + ], + "play-pause": [ + "Basculer la lecture/pause de l'audio" + ], + "play-region": [ + "Lire la région sélectionnée. Active uniquement si une région a été sélectionnée." + ], + "center-spec": [ + "Centrez le spectrogramme sur la position actuelle de la tête de lecture. De plus, si vous double-cliquez sur un point dans l'audio, le spectrogramme sera centré sur ce point." + ], + "go-to": [ + "Aller à la position dans le fichier" + ], + "file-begin": [ + "Déplacer la tête de lecture au début du fichier" + ], + "file-end": [ + "Déplacer la tête de lecture à la fin du fichier" + ], + "pageup": [ + "Revenir à la période précédente dans le spectrogramme. Vous pouvez aussi utiliser la molette de la souris ou un balayage à deux doigts sur le trackpad." + ], + "pagedown": [ + "Avancer à la période suivante dans le spectrogramme" + ], + "skip-forward": [ + "Avancer la tête de lecture." + ], + "skip-back": [ + "Reculer la tête de lecture." + ], + "next-detection": [ + "Passer à la détection suivante" + ], + "previous-detection": [ + "Revenir à la détection précédente" + ], + "spec-adjust": [ + "Ajustements du spectrogramme" + ], + "zoom-in": [ + "Zoomer sur le spectrogramme. Lors du zoom, Chirpity ajuste automatiquement la taille de la fenêtre de la transformée de Fourier à court terme (STFT) pour optimiser la résolution spectrale" + ], + "zoom-out": [ + "Dézoomer sur le spectrogramme. Lors du zoom, Chirpity ajuste automatiquement la taille de la fenêtre STFT pour optimiser la résolution spectrale" + ], + "reduce-fft": [ + "Réduire manuellement la taille de la fenêtre du spectrogramme. Ajuster la taille de la fenêtre a pour effet de rendre les appels plus nets ou flous dans le spectrogramme." + ], + "increase-fft": [ + "Augmenter manuellement la taille de la fenêtre du spectrogramme" + ], + "timeline-toggle": [ + "Basculer entre le code temporel et l'heure de la journée" + ], + "records": [ + "Enregistrements" + ], + "delete": [ + "Supprimer l'enregistrement actuel" + ], + "undo": [ + "Restaurer l'enregistrement supprimé(s)" + ], + "validate": [ + "Valider l'enregistrement actif actuel (confirmer la détection)" + ] + } + \ No newline at end of file diff --git a/I18n/keyboard.nl.json b/I18n/keyboard.nl.json new file mode 100644 index 00000000..dfba18c7 --- /dev/null +++ b/I18n/keyboard.nl.json @@ -0,0 +1,95 @@ +{ + "file-handling": [ + "Bestandsbeheer" + ], + "show-file-open": [ + "Bestandsopen dialoog tonen" + ], + "save-detections": [ + "Opslaan van detecties naar het archief van records." + ], + "analysis": [ + "Analyse" + ], + "analyse-file": [ + "Analyseer het huidige bestand." + ], + "analyeALL": [ + "Analyseer alle open bestanden." + ], + "stop-analysis": [ + "Stop analyse" + ], + "toggle-archive": [ + "Wissel tussen het verkennen van het archief en de nieuwste analyseresultaten. Dit stelt je in staat om huidige detecties te vergelijken met die je eerder hebt geregistreerd." + ], + "navigate-audio": [ + "Navigeren door audio" + ], + "play-pause": [ + "Speel/Pauze audio omschakelen" + ], + "play-region": [ + "Speel de geselecteerde regio af. Alleen actief als een regio is geselecteerd." + ], + "center-spec": [ + "Centreer het spectrogram op de huidige afspeelkoppositie. Ook, als je dubbelklikt met de muis op een punt in de audio, wordt het spectrogram op dat punt gecentreerd." + ], + "go-to": [ + "Ga naar positie in bestand" + ], + "file-begin": [ + "Beweeg de afspeelkop naar het begin van het bestand" + ], + "file-end": [ + "Beweeg de afspeelkop naar het einde van het bestand" + ], + "pageup": [ + "Beweeg terug naar de vorige periode in het spectrogram. Je kunt ook het muiswiel of een tweevinger veegbeweging op het trackpad gebruiken." + ], + "pagedown": [ + "Beweeg naar de volgende periode in het spectrogram" + ], + "skip-forward": [ + "Beweeg de afspeelkop naar voren." + ], + "skip-back": [ + "Beweeg de afspeelkop naar achteren." + ], + "next-detection": [ + "Spring naar de volgende detectie" + ], + "previous-detection": [ + "Spring terug naar de vorige detectie" + ], + "spec-adjust": [ + "Spectrogramaanpassingen" + ], + "zoom-in": [ + "Zoom in op het spectrogram. Bij inzoomen past Chirpity automatisch de venstergrootte van de korttijd Fouriertransformatie (STFT) aan om de spectrale resolutie te optimaliseren" + ], + "zoom-out": [ + "Zoom uit op het spectrogram. Bij uitzoomen past Chirpity automatisch de STFT venstergrootte aan om de spectrale resolutie te optimaliseren" + ], + "reduce-fft": [ + "Handmatig de spectrogramvenstergrootte verkleinen. Het aanpassen van de venstergrootte heeft het effect van het scherper of vervagen van de oproepen in het spectrogram." + ], + "increase-fft": [ + "Handmatig de spectrogramvenstergrootte vergroten" + ], + "timeline-toggle": [ + "Wissel tussen tijdcode en tijd van de dag" + ], + "records": [ + "Records" + ], + "delete": [ + "Verwijder huidig record" + ], + "undo": [ + "Herstel verwijderde record(s)" + ], + "validate": [ + "Valideer het huidige actieve record (bevestig de detectie)" + ] +} diff --git a/I18n/keyboard.pt.json b/I18n/keyboard.pt.json new file mode 100644 index 00000000..2bdedda1 --- /dev/null +++ b/I18n/keyboard.pt.json @@ -0,0 +1,95 @@ +{ + "file-handling": [ + "Manuseio de arquivos" + ], + "show-file-open": [ + "Mostrar caixa de diálogo de abertura de arquivo" + ], + "save-detections": [ + "Salvar as detecções no arquivo de registros." + ], + "analysis": [ + "Análise" + ], + "analyse-file": [ + "Analisar o arquivo atual." + ], + "analyeALL": [ + "Analisar todos os arquivos abertos." + ], + "stop-analysis": [ + "Parar análise" + ], + "toggle-archive": [ + "Alternar entre explorar o arquivo e os resultados da análise mais recente. Isso permite comparar as detecções atuais com as que você registrou anteriormente." + ], + "navigate-audio": [ + "Navegar pelo áudio" + ], + "play-pause": [ + "Alternar entre reprodução/pausa do áudio" + ], + "play-region": [ + "Reproduzir a região selecionada. Somente ativo se uma região tiver sido selecionada." + ], + "center-spec": [ + "Centralizar o espectrograma na posição atual do cabeçote de reprodução. Além disso, se você clicar duas vezes no áudio, ele centralizará o espectrograma nesse ponto." + ], + "go-to": [ + "Ir para a posição no arquivo" + ], + "file-begin": [ + "Mover o cabeçote de reprodução para o início do arquivo" + ], + "file-end": [ + "Mover o cabeçote de reprodução para o final do arquivo" + ], + "pageup": [ + "Mover-se para o período anterior no espectrograma. Você também pode usar a roda do mouse ou o gesto de dois dedos no trackpad." + ], + "pagedown": [ + "Mover-se para o próximo período no espectrograma" + ], + "skip-forward": [ + "Mover o cabeçote de reprodução para frente." + ], + "skip-back": [ + "Mover o cabeçote de reprodução para trás." + ], + "next-detection": [ + "Pular para a próxima detecção" + ], + "previous-detection": [ + "Pular para a detecção anterior" + ], + "spec-adjust": [ + "Ajustes do espectrograma" + ], + "zoom-in": [ + "Ampliar o espectrograma. Ao ampliar, o Chirpity ajusta automaticamente o tamanho da janela da transformada de Fourier de curto prazo (STFT) para otimizar a resolução espectral" + ], + "zoom-out": [ + "Reduzir o espectrograma. Ao reduzir, o Chirpity ajusta automaticamente o tamanho da janela STFT para otimizar a resolução espectral" + ], + "reduce-fft": [ + "Reduzir manualmente o tamanho da janela do espectrograma. Ajustar o tamanho da janela tem o efeito de aumentar ou suavizar as chamadas no espectrograma." + ], + "increase-fft": [ + "Aumentar manualmente o tamanho da janela do espectrograma" + ], + "timeline-toggle": [ + "Alternar entre código de tempo e hora do dia" + ], + "records": [ + "Registros" + ], + "delete": [ + "Excluir o registro atual" + ], + "undo": [ + "Restaurar o(s) registro(s) excluído(s)" + ], + "validate": [ + "Validar o registro ativo atual (confirmar a detecção)" + ] +} diff --git a/I18n/keyboard.ru.json b/I18n/keyboard.ru.json new file mode 100644 index 00000000..2c732f75 --- /dev/null +++ b/I18n/keyboard.ru.json @@ -0,0 +1,96 @@ +{ + "file-handling": [ + "Обработка файлов" + ], + "show-file-open": [ + "Показать диалоговое окно открытия файла" + ], + "save-detections": [ + "Сохранить детекции в архив записей." + ], + "analysis": [ + "Анализ" + ], + "analyse-file": [ + "Анализировать текущий файл." + ], + "analyeALL": [ + "Анализировать все открытые файлы." + ], + "stop-analysis": [ + "Остановить анализ" + ], + "toggle-archive": [ + "Переключение между исследованием архива и последними результатами анализа. Это позволяет вам сравнивать текущие детекции с теми, что вы записали ранее." + ], + "navigate-audio": [ + "Навигация по аудио" + ], + "play-pause": [ + "Переключить воспроизведение/пауза аудио" + ], + "play-region": [ + "Воспроизвести выбранную область. Активно только при выбранной области." + ], + "center-spec": [ + "Центрировать спектрограмму в текущем положении головки воспроизведения. Также, если вы дважды щелкнете мышью в точке аудио, спектрограмма будет центрирована на этом пункте." + ], + "go-to": [ + "Перейти к позиции в файле" + ], + "file-begin": [ + "Переместить головку воспроизведения в начало файла" + ], + "file-end": [ + "Переместить головку воспроизведения в конец файла" + ], + "pageup": [ + "Переместиться назад к предыдущему периоду в спектрограмме. Также можно использовать колесо мыши или смахивание двумя пальцами на тачпаде." + ], + "pagedown": [ + "Переместиться вперед к следующему периоду в спектрограмме" + ], + "skip-forward": [ + "Переместить головку воспроизведения вперед." + ], + "skip-back": [ + "Переместить головку воспроизведения назад." + ], + "next-detection": [ + "Перейти к следующей детекции" + ], + "previous-detection": [ + "Перейти к предыдущей детекции" + ], + "spec-adjust": [ + "Настройки спектрограммы" + ], + "zoom-in": [ + "Приблизить спектрограмму. При масштабировании Chirpity автоматически регулирует размер окна короткосрочного преобразования Фурье (STFT) для оптимизации спектрального разрешения" + ], + "zoom-out": [ + "Отдалить спектрограмму. При масштабировании Chirpity автоматически регулирует размер окна STFT для оптимизации спектрального разрешения" + ], + "reduce-fft": [ + "Ручная регулировка размера окна спектрограммы. Изменение размера окна влияет на резкость или размытость звуков в спектрограмме." + ], + "increase-fft": [ + "Ручное увеличение размера окна спектрограммы" + ], + "timeline-toggle": [ + "Переключение между временным кодом и временем суток" + ], + "records": [ + "Записи" + ], + "delete": [ + "Удалить текущую запись" + ], + "undo": [ + "Восстановить удаленную запись(и)" + ], + "validate": [ + "Подтвердить текущую активную запись (подтвердить детекцию)" + ] + } + \ No newline at end of file diff --git a/I18n/keyboard.sv.json b/I18n/keyboard.sv.json new file mode 100644 index 00000000..0b7d73e2 --- /dev/null +++ b/I18n/keyboard.sv.json @@ -0,0 +1,95 @@ +{ + "file-handling": [ + "Filhantering" + ], + "show-file-open": [ + "Visa filöppningsdialog" + ], + "save-detections": [ + "Spara detektioner till rekordarkivet." + ], + "analysis": [ + "Analys" + ], + "analyse-file": [ + "Analysera den aktuella filen." + ], + "analyeALL": [ + "Analysera alla öppna filer." + ], + "stop-analysis": [ + "Stoppa analysen" + ], + "toggle-archive": [ + "Byt mellan att utforska arkivet och de senaste analysresultaten. Detta låter dig jämföra aktuella detektioner med de som du tidigare har registrerat." + ], + "navigate-audio": [ + "Navigera i ljud" + ], + "play-pause": [ + "Växla mellan Spela/Pausa ljudet" + ], + "play-region": [ + "Spela den valda regionen. Endast aktiv om en region har valts." + ], + "center-spec": [ + "Centrera spektrogrammet vid den aktuella uppspelningspositionen. Om du dubbelklickar på musen vid en punkt i ljudet, centrerar det spektrogrammet på den punkten." + ], + "go-to": [ + "Gå till position i filen" + ], + "file-begin": [ + "Flytta uppspelningshuvudet till början av filen" + ], + "file-end": [ + "Flytta uppspelningshuvudet till slutet av filen" + ], + "pageup": [ + "Flytta tillbaka till föregående period i spektrogrammet. Du kan också använda musens hjul eller en tvåfingers svepning på pekplattan." + ], + "pagedown": [ + "Flytta framåt till nästa period i spektrogrammet" + ], + "skip-forward": [ + "Flytta uppspelningshuvudet framåt." + ], + "skip-back": [ + "Flytta uppspelningshuvudet bakåt." + ], + "next-detection": [ + "Hoppa till nästa detektion" + ], + "previous-detection": [ + "Hoppa tillbaka till föregående detektion" + ], + "spec-adjust": [ + "Spektrogramjusteringar" + ], + "zoom-in": [ + "Zooma in på spektrogrammet. Vid zoomning justerar Chirpity automatiskt korttids Fouriertransformfönstrets storlek för att optimera den spektrala upplösningen" + ], + "zoom-out": [ + "Zooma ut på spektrogrammet. Vid zoomning justerar Chirpity automatiskt STFT-fönstrets storlek för att optimera den spektrala upplösningen" + ], + "reduce-fft": [ + "Minska manuellt spektrogramfönstrets storlek. Justering av fönsterstorleken gör att ljuden i spektrogrammet blir skarpare eller suddigare." + ], + "increase-fft": [ + "Öka manuellt spektrogramfönstrets storlek" + ], + "timeline-toggle": [ + "Byt mellan tidskod och tid på dygnet" + ], + "records": [ + "Poster" + ], + "delete": [ + "Radera aktuell post" + ], + "undo": [ + "Återställ raderad post(er)" + ], + "validate": [ + "Validera den aktuella aktiva posten (bekräfta detektionen)" + ] +} diff --git a/I18n/keyboard.zh.json b/I18n/keyboard.zh.json new file mode 100644 index 00000000..c1e9d787 --- /dev/null +++ b/I18n/keyboard.zh.json @@ -0,0 +1,95 @@ +{ + "file-handling": [ + "文件处理" + ], + "show-file-open": [ + "显示文件打开对话框" + ], + "save-detections": [ + "将检测结果保存到记录档案中" + ], + "analysis": [ + "分析" + ], + "analyse-file": [ + "分析当前文件" + ], + "analyeALL": [ + "分析所有打开的文件" + ], + "stop-analysis": [ + "停止分析" + ], + "toggle-archive": [ + "在浏览档案和最新分析结果之间切换。这样可以将当前检测与之前记录的结果进行比较。" + ], + "navigate-audio": [ + "音频导航" + ], + "play-pause": [ + "切换播放/暂停音频" + ], + "play-region": [ + "播放选定区域。如果已选择区域,则此功能可用" + ], + "center-spec": [ + "将频谱图中心设置为当前播放头位置。此外,如果您在音频的某个位置双击鼠标,它将把频谱图中心定位到该点" + ], + "go-to": [ + "跳转到文件中的位置" + ], + "file-begin": [ + "将播放头移至文件开头" + ], + "file-end": [ + "将播放头移至文件末尾" + ], + "pageup": [ + "返回频谱图中的上一个时间段。您也可以使用鼠标滚轮或双指触控板滑动" + ], + "pagedown": [ + "前进到频谱图中的下一个时间段" + ], + "skip-forward": [ + "将播放头向前移动" + ], + "skip-back": [ + "将播放头向后移动" + ], + "next-detection": [ + "跳到下一个检测结果" + ], + "previous-detection": [ + "跳回到上一个检测结果" + ], + "spec-adjust": [ + "频谱图调整" + ], + "zoom-in": [ + "放大频谱图。缩放时,Chirpity 会自动调整短时傅里叶变换(STFT)窗口大小,以优化频谱分辨率" + ], + "zoom-out": [ + "缩小频谱图。缩放时,Chirpity 会自动调整 STFT 窗口大小,以优化频谱分辨率" + ], + "reduce-fft": [ + "手动减小频谱图窗口大小。调整窗口大小会使频谱图中的声音更加锐利或模糊" + ], + "increase-fft": [ + "手动增加频谱图窗口大小" + ], + "timeline-toggle": [ + "在时间码和一天中的时间之间切换" + ], + "records": [ + "记录" + ], + "delete": [ + "删除当前记录" + ], + "undo": [ + "恢复已删除的记录" + ], + "validate": [ + "验证当前活动记录(确认检测)" + ] +} diff --git a/I18n/settings.en.json b/I18n/settings.en.json new file mode 100644 index 00000000..f7bfa114 --- /dev/null +++ b/I18n/settings.en.json @@ -0,0 +1,578 @@ +[ + { + "id": null, + "textContent": "Detections" + }, + { + "id": null, + "textContent": "Model" + }, + { + "id": null, + "textContent": "Choose the model to use for detection." + }, + { + "id": null, + "textContent": "Nocmig" + }, + { + "id": null, + "textContent": "will use a model tuned for the nocturnal flight calls of European birds for analysis." + }, + { + "id": null, + "textContent": "BirdNET" + }, + { + "id": null, + "textContent": "will use the" + }, + { + "id": null, + "textContent": "BirdNET" + }, + { + "id": null, + "textContent": "model developed by Stefan Kahl et al. from the K. Lisa Yang Center for Conservation Bioacoustics" + }, + { + "id": null, + "textContent": "Confidence Threshold" + }, + { + "id": null, + "textContent": "This setting determines the minimum confidence level required for the model to report a detection. Increasing the value reduces false positives but increases the risk of missing genuine calls." + }, + { + "id": null, + "textContent": "N.B." + }, + { + "id": null, + "textContent": "Confidence can be adjusted at any time. The results are updated even after analysis." + }, + { + "id": null, + "textContent": "List" + }, + { + "id": null, + "textContent": "Local Birds" + }, + { + "id": null, + "textContent": ". Exclude birds unlikely to be found in your location." + }, + { + "id": null, + "textContent": "With this option selected, an additional panel appears. The" + }, + { + "id": null, + "textContent": "Threshold" + }, + { + "id": null, + "textContent": "value represents the eBird checklist frequency. So, a value of 0.03 means birds that are predicted to occur in less than 3% of eBird checklists in the area are excluded. If you also check \"Use Week\", it excludes birds not expected at the time of year the recording was made - which is read from the file's timestamp." + }, + { + "id": null, + "textContent": "N.B." + }, + { + "id": null, + "textContent": "Currently, a limitation to the week specific filters is that the summary of detections will use the list from the latest file in a batch of files. For example, if you analyse files from April 22, October 23 and February 24 in a batch, the list for February 24 will be used for the summary." + }, + { + "id": null, + "textContent": "Nocturnal Birds" + }, + { + "id": null, + "textContent": ". This will exclude detections of bird song and the calls of species which do not typically vocalise during the night. When you enable \"" + }, + { + "id": null, + "textContent": "Use Location settings" + }, + { + "id": null, + "textContent": "\" for the BirdNET model, the list will comprise the birds on the" + }, + { + "id": null, + "textContent": "Local Birds" + }, + { + "id": null, + "textContent": "list, excluding those which do not call at night." + }, + { + "id": null, + "textContent": "Birds" + }, + { + "id": null, + "textContent": ". Include detections for all birds, excluding non-avian classes." + }, + { + "id": null, + "textContent": "Everything" + }, + { + "id": null, + "textContent": ". In addition to all bird species, show non-bird detections including segments that were considered noise." + }, + { + "id": null, + "textContent": "Custom" + }, + { + "id": null, + "textContent": ". Provide a list for the model to use. Custom lists allow you to:" + }, + { + "id": null, + "textContent": "Precisely define the detections you would like Chirpity to report on" + }, + { + "id": null, + "textContent": "Search only for a specific species" + }, + { + "id": null, + "textContent": "You may use a different custom list for both BirdNET and Nocmig models. The format for a custom list file is \"scientific name_common name\", with each species on a new line." + }, + { + "id": null, + "textContent": "Importantly, the custom list needs to use labels in your selected language." + }, + { + "id": null, + "textContent": "You can export a starting list in the correct format from the Help menu, using the \"" + }, + { + "id": null, + "textContent": "What species are detected?" + }, + { + "id": null, + "textContent": "\" link." + }, + { + "id": null, + "textContent": "Only analyse night time periods" + }, + { + "id": null, + "textContent": "Only search for detections at night. Chirpity calculates the end and start of civil twilight from the timestamps of your audio files using the location you have set. If your recording spans both daylight and night time periods, the day periods will be skipped. If you are only interested in nocturnal calls this has two benefits:" + }, + { + "id": null, + "textContent": "There will be fewer false positives, since both models make more mistakes when many species vocalise at once (e.g. during the dawn chorus)" + }, + { + "id": null, + "textContent": "The analysis will complete faster, since it ignores any daytime period" + }, + { + "id": null, + "textContent": "Show Species IUCN Red List status in the summary" + }, + { + "id": null, + "textContent": "Display the global Red List status of the species in the summary table, as assessed by the" + }, + { + "id": null, + "textContent": "IUCN" + }, + { + "id": null, + "textContent": "There are 7 categories:" + }, + { + "id": null, + "textContent": "Least Concern (LC)" + }, + { + "id": null, + "textContent": "Near Threatened (NT)" + }, + { + "id": null, + "textContent": "Vulnerable (VU)" + }, + { + "id": null, + "textContent": "Endangered (EN)" + }, + { + "id": null, + "textContent": "Critically ENdangered (CR)" + }, + { + "id": null, + "textContent": "Extinct in the Wild" + }, + { + "id": null, + "textContent": "Extinct" + }, + { + "id": null, + "textContent": "If you click the icon, it will open the assessment page with the species' range and details of the assessment in your web browser. The data is sourced from:" + }, + { + "id": null, + "textContent": "IUCN 2024. IUCN Red List of Threatened Species. Version 2024-2" + }, + { + "id": null, + "textContent": "Clear reference call cache" + }, + { + "id": null, + "textContent": "The species' comparison metadata that determine what you see when you select \"Compare with Reference Calls\" on a context menu are saved to disk. If you clear the cache, the saved data are deleted, and species data will be re-requested from the Xeno-Canto website when you next ask for a comparison. This may be useful if a reference file is removed from the site, or if you would like to update the selection of calls." + }, + { + "id": null, + "textContent": "Default Location" + }, + { + "id": null, + "textContent": "File name context menu." + }, + { + "id": null, + "textContent": "Set the default location to use for calculating the start and end of civil twilight and also generating your" + }, + { + "id": null, + "textContent": "Local Birds" + }, + { + "id": null, + "textContent": "list. This setting can be overridden for individual files by assigning a custom location in the filename context menu." + }, + { + "id": null, + "textContent": "System" + }, + { + "id": null, + "textContent": "Language" + }, + { + "id": null, + "textContent": "Choose the language for the \"common name\" labels, where translations exist. The translated labels have been obtained from" + }, + { + "id": null, + "textContent": "eBird" + }, + { + "id": null, + "textContent": "." + }, + { + "id": null, + "textContent": "Backend" + }, + { + "id": null, + "textContent": "This option is only visible when using the Nocmig model. Choose how predictions are calculated on you computer." + }, + { + "id": null, + "textContent": "CPU" + }, + { + "id": null, + "textContent": "will use the CPU for predictions, this is generally faster if you have an integrated graphics card." + }, + { + "id": null, + "textContent": "WebGL" + }, + { + "id": null, + "textContent": "will use the graphics card. If you have a dedicated graphics card, this will typically be significantly faster." + }, + { + "id": null, + "textContent": "WebGPU" + }, + { + "id": null, + "textContent": "This employs a new technology and will also use graphics processors. It is similar to WebGL, but is known to speed up the processing times on Macs, unlike WebGL. WebGPU uses more memory than WebGL, and if the threads or batch size values are set too high, Chirpity may run out of memory. If this happens the spectrogram may disappear from the screen or the app may become unresponsive. Use a lower value for threads and / or batch size." + }, + { + "id": null, + "textContent": "Threads" + }, + { + "id": null, + "textContent": "This setting allows you to select the number of threads to use for predictions. When using the CPU backend, the number of threads is automatically set to match the number of CPU cores available on the computer. By default, the GPU backend uses two threads. Adjusting this setting, along with the batch size, can increase the speed of processing." + }, + { + "id": null, + "textContent": "Batch Size" + }, + { + "id": null, + "textContent": "This setting determines the number of three-second audio chunks to process for each model request. Larger values may lead to faster processing, especially on long files, although too large a value will reduce the processing speed and may even cause memory issues. The optimal value may also differ depending on the file format being analysed." + }, + { + "id": null, + "textContent": "Enable analysis completion notifications" + }, + { + "id": null, + "textContent": "This is useful if you would like to run Chirpity analysis in the background, or with the window minimised. A system alert will notify you when the analysis completes." + }, + { + "id": null, + "textContent": "Audio Preferences" + }, + { + "id": null, + "textContent": "Volume Adjustment" + }, + { + "id": null, + "textContent": "If your recordings are very quiet, you can increase the loudness of the audio by increasing the gain. The volume of audio can be increased by up to 50 decibels." + }, + { + "id": null, + "textContent": "Normalise audio" + }, + { + "id": null, + "textContent": "If enabled, the levels in the audio file will be normalised. In simple terms, this will maximise the volume range between the quietest and loudest sounds. The effect will ensure all audio plays at a similar volume, and vocalisations in quiet audio files will be easier to hear." + }, + { + "id": null, + "textContent": "High Pass filter" + }, + { + "id": null, + "textContent": "This filter removes the sound below the frequency selected. Intended primarily for recordings made in in urban settings, this suppresses low-frequency hum." + }, + { + "id": null, + "textContent": "Low Shelf filter" + }, + { + "id": null, + "textContent": "This filter is similar to the High Pass filter. However, rather than simply remove noise, it reduces the volume of low frequency noise. The advantage of a low shelf filter is that you can reduce the hum, whilst still being able to hear species which have low frequency calls. You can set the threshold frequency, and the strength of the filter to apply (Attenuation)." + }, + { + "id": null, + "textContent": "Audio Export" + }, + { + "id": null, + "textContent": "Format and Bitrate" + }, + { + "id": null, + "textContent": "Choose from lossless or lossy formats for the audio clips you export from Chirpity." + }, + { + "id": null, + "textContent": "Convert to mono" + }, + { + "id": null, + "textContent": "Combine stereo tracks to a single channel. This will result in smaller file sizes." + }, + { + "id": null, + "textContent": "Decorators" + }, + { + "id": null, + "textContent": "These two options can be used to:" + }, + { + "id": null, + "textContent": "Pad:" + }, + { + "id": null, + "textContent": "Add two seconds to the beginning and end of the audio selected for export" + }, + { + "id": null, + "textContent": "Fade:" + }, + { + "id": null, + "textContent": "Apply a fade effect to the beginning and end of your exported files." + }, + { + "id": null, + "textContent": "Audio Library" + }, + { + "id": null, + "textContent": "Add to Library on Save" + }, + { + "id": null, + "textContent": "When you save a set of results to the archive database, the associated audio files will be converted to the library format and saved in the archive location." + }, + { + "id": null, + "textContent": "Crop library audio to night time periods" + }, + { + "id": null, + "textContent": "This will crop the start or end sections of a file to remove the audio that was recorded during daylight. Specifically, before the end of Civil Twilight in the evening and after the end of Civil Twilight in the morning. Those periods are set according to the file's location settings." + }, + { + "id": null, + "textContent": "Library Location" + }, + { + "id": null, + "textContent": "Select a folder in which to store the audio library. The files will be organised according to the following structure:" + }, + { + "id": null, + "textContent": " / Recording site / Year / Month / filename" + }, + { + "id": null, + "textContent": "For example:" + }, + { + "id": null, + "textContent": "D:\\Vögel\\56075, Karthäuserhofgelände\\2024\\Juli\\20240704_0130.flac" + }, + { + "id": null, + "textContent": "Library Format" + }, + { + "id": null, + "textContent": "The library can store your audio in a lossy or lossless format." + }, + { + "id": null, + "textContent": "Lossy:" + }, + { + "id": null, + "textContent": "Audio is converted to Ogg Vorbis. This is the recommended option. The audio will be virtually indistinguishable from the original in the application - both to the model and to the human ear. The file size will be dramatically reduced - to the extent that a full 24 hours of recordings will require about 1 Gigabyte of storage." + }, + { + "id": null, + "textContent": "Lossless:" + }, + { + "id": null, + "textContent": "If the lossless option is selected, the audio fidelity (bitrate, channels and sample rate) will be identical to the original file - even WAV files. By using the FLAC format, the archived files will have roughly half the size of their WAV equivalents." + }, + { + "id": null, + "textContent": "Spectrogram Preferences" + }, + { + "id": null, + "textContent": "Colourmap" + }, + { + "id": null, + "textContent": "Choose a colour theme for the spectrogram display, or create your own. If you select 'custom', you will have the option to set the colours for peak, mid and quiet sounds according to personal preference. You can also adjust the mid-point position: with a value of 0 or 1, the Spectrogram will be two-tone. Values in between will blend the three colours. If you set the Mid colour the same as one of the others, you will be able to adjust the contrast in the spectrogram using Mid Position adjustments." + }, + { + "id": null, + "textContent": "In combination with audio filter adjustments, a custom colourmap allows you to enhance the contrast / visibility of calls using the colours of your choice." + }, + { + "id": null, + "textContent": "Window Function" + }, + { + "id": null, + "textContent": "A variety of windowing functions are available for the spectrogram display. Each has slightly different characteristics, so changing the window function may also enhance the appearance of the calls in the display." + }, + { + "id": null, + "textContent": "Timeline" + }, + { + "id": null, + "textContent": "The spectrogram timeline has two modes:" + }, + { + "id": null, + "textContent": "Timecode" + }, + { + "id": null, + "textContent": "displays the time elapsed from the beginning of the file." + }, + { + "id": null, + "textContent": "Time of Day" + }, + { + "id": null, + "textContent": "relies on file timestamps to determine the actual time of detected calls. If a file's timestamp does not reflect the recording time, the reading will be inaccurate. To edit the start time of the current file, set the desired date and time using the filename context menu." + }, + { + "id": null, + "textContent": "Advanced" + }, + { + "id": null, + "textContent": "Send Filtered Audio for Analysis" + }, + { + "id": null, + "textContent": "By default, the filter settings in the Audio Preferences are just used to modify the audio in the application interface. If you enable this setting, the modified audio will be used for analysis. This is usually a bad idea, as it impairs the accuracy of the models in most situations. However, if your recordings have a considerable amount of low frequency noise, it" + }, + { + "id": null, + "textContent": "may" + }, + { + "id": null, + "textContent": "be that modifying the audio using these filters will improve the models' ability to make accurate detections." + }, + { + "id": null, + "textContent": "Context Mode" + }, + { + "id": null, + "textContent": "This mode is only available for the Nocmig model. When enabled, the model will use the surrounding context when making predictions. This helps mitigate against false positive detections." + }, + { + "id": null, + "textContent": "SNR filter" + }, + { + "id": null, + "textContent": "This setting is also only available for the Nocmig model. The SNR (Signal to Noise Ratio) filter can only be enabled when using the CPU backend. When enabled, Chirpity will disregard audio segments with no distinct sound event. A stronger signal is required for a prediction to be attempted when higher signal-to-noise values are set. The purpose is to deliver significant speed gains, however, the setting may cause Chirpity to miss quieter, more distant calls." + }, + { + "id": null, + "textContent": "Debug mode" + }, + { + "id": null, + "textContent": "If you have encountered an issue while using Chirpity, you can enable debug mode. When you change this setting, you will need to quit and relaunch the application for the change to take effect. When launched in debug mode, two windows will open, and each will print debugging information to a console on the right of the window. This is" + }, + { + "id": null, + "textContent": "extremely" + }, + { + "id": null, + "textContent": "useful if you want to report a bug - as you can share a screenshot of any errors that appear (these will show up in red in the console)." + } + ] \ No newline at end of file diff --git a/I18n/usage.en.json b/I18n/usage.en.json new file mode 100644 index 00000000..2cfe426d --- /dev/null +++ b/I18n/usage.en.json @@ -0,0 +1,278 @@ +[ + { + "id": null, + "textContent": "Suggested Workflow" + }, + { + "id": null, + "textContent": "Open an audio file, files or folder of audio. There are a three ways to do this:" + }, + { + "id": null, + "textContent": "Drag and drop the files or folders onto the Chirpity Nocmig application" + }, + { + "id": null, + "textContent": "In the Chirpity Nocmig application, select File > Open Audio File or press Ctrl-O and select the files to open" + }, + { + "id": null, + "textContent": "Right-click on the audio file(s) in Windows Explorer (or Finder on a Mac) and select \"Open with\" > Chirpity" + }, + { + "id": null, + "textContent": "Ideally, files will be those recorded by your digital recorder with their original timestamp. In this case, you will be able to take advantage of the" + }, + { + "id": null, + "textContent": "Time of Day" + }, + { + "id": null, + "textContent": "mode for the spectrogram timeline, which will show the actual time calls were detected. If not, you can still display (and store) the correct time of day for the file and detections if you edit its start time. This can be edited by right-clicking the filename in the control bar." + }, + { + "id": null, + "textContent": "File name context menu." + }, + { + "id": null, + "textContent": "Select \"" + }, + { + "id": null, + "textContent": "Analyse Current File" + }, + { + "id": null, + "textContent": "\" from the" + }, + { + "id": null, + "textContent": "Analysis" + }, + { + "id": null, + "textContent": "menu. Depending on the file length, this may take several minutes. A progress indicator will appear as a guide to how long this is likely to take. To stop the analysis at any point, press the" + }, + { + "id": null, + "textContent": "Esc" + }, + { + "id": null, + "textContent": "key." + }, + { + "id": null, + "textContent": "Exploring Detections" + }, + { + "id": null, + "textContent": "As the model makes detections, they appear in a table below the spectrogram. Clicking the detection's row in the table will cause the playhead to jump to the start of that detection and highlight its location on the spectrogram. Right-clicking the row will bring up the detection context menu. This contains options specific to the currently highlighted detection. You may press the SpaceBar to play from the beginning of the selection and continue playing the audio until you press the SpaceBar again. Clicking the spectrogram will move the playhead to that position. If currently playing, playback will continue, so this allows you to replay a call repeatedly." + }, + { + "id": null, + "textContent": "Detection context menu." + }, + { + "id": null, + "textContent": "If multiple detections apply for a given time period, a circle will be displayed next to the Species' name. Clicking this circle will display the other species detected in the region, and the confidence given to those IDs." + }, + { + "id": null, + "textContent": "Summary and Filtering Detections" + }, + { + "id": null, + "textContent": "A summary table appears to the left of the results once the model has completed its analysis. Importantly, this table allows you to filter the results displayed in the main results table. Click the species name in the summary to limit the display to that single species. This is" + }, + { + "id": null, + "textContent": "extremely" + }, + { + "id": null, + "textContent": "useful if several hundred Robin calls were detected!" + }, + { + "id": null, + "textContent": "Custom \"Deep Dive\" Detections" + }, + { + "id": null, + "textContent": "Sometimes, a call is missed or a detection is erroneous due to the position of the analysis window in relation to the call. The window can be moved by dragging it, or you can create a new window by clicking and dragging out a custom region on the spectrogram. Once you have a new region, select" + }, + { + "id": null, + "textContent": "search" + }, + { + "id": null, + "textContent": "Analyse" + }, + { + "id": null, + "textContent": "from the context menu or" + }, + { + "id": null, + "textContent": "Analysis > Analyse selected interval" + }, + { + "id": null, + "textContent": "from the menu. The detections for the selected region appear in an overlay window and can be saved to the results or discarded." + }, + { + "id": null, + "textContent": "Amending Results" + }, + { + "id": null, + "textContent": "It is possible to remove results by selecting" + }, + { + "id": null, + "textContent": "delete_forever" + }, + { + "id": null, + "textContent": "Delete Record" + }, + { + "id": null, + "textContent": "in the context menu. This can be selected on a per-detection basis in the results table, or a per-species basis in the summary." + }, + { + "id": null, + "textContent": "Saving Results" + }, + { + "id": null, + "textContent": "N.B." + }, + { + "id": null, + "textContent": "Results are not saved by default." + }, + { + "id": null, + "textContent": "Save results by selecting" + }, + { + "id": null, + "textContent": "Records >" + }, + { + "id": null, + "textContent": "archive" + }, + { + "id": null, + "textContent": "Save to Archive" + }, + { + "id": "reload", + "textContent": "Restoring Results" + }, + { + "id": null, + "textContent": "When you save your detections in Chirpity, a database is updated with the details of the detections. If you reload your file at a later date, and select \"Get Results for Current File\", the saved results are restored." + }, + { + "id": null, + "textContent": "N.B." + }, + { + "id": null, + "textContent": "If the original file is missing because it has since been compressed to one of the supported formats ('.mp3', '.wav', '.mpga', '.ogg', '.opus', '.flac', '.aac'), so long as it retains the same name, but with a new extension, Chirpity will find and load that file instead and, rather than take its cue from this file's creation time, use the original one." + }, + { + "id": null, + "textContent": "From the records menu, you can also browse saved detections by species, and within a date range of your choosing. Furthermore, you can generate charts of the species detected over time." + }, + { + "id": "export", + "textContent": "Exporting Results" + }, + { + "id": null, + "textContent": "There are a number of ways to export detections." + }, + { + "id": null, + "textContent": "Export an audio clip of a detection. To do this, select" + }, + { + "id": null, + "textContent": "music_note" + }, + { + "id": null, + "textContent": "Export Audio Clip" + }, + { + "id": null, + "textContent": "on the context menu. By default, the filename will contain the species and timestamp of the detection identifying its position in the original audio file. The" + }, + { + "id": null, + "textContent": "Settings" + }, + { + "id": null, + "textContent": "menu allows you to control the format and quality of the exported files as well as apply padding and a fade effect to the beginning and end of the audio." + }, + { + "id": null, + "textContent": "'Batch' export audio clips of up to 1000 species' detections. To do this, select" + }, + { + "id": null, + "textContent": "music_note" + }, + { + "id": null, + "textContent": "Export Audio Clips" + }, + { + "id": null, + "textContent": "on the context menu of the summary table. You will be prompted for the folder in which you would like to save these files." + }, + { + "id": null, + "textContent": "Export a CSV file of detections. To do this, select" + }, + { + "id": null, + "textContent": "ios_share" + }, + { + "id": null, + "textContent": "Export results to CSV" + }, + { + "id": null, + "textContent": "from the file menu. This will export the results to a CSV file in the folder you choose." + }, + { + "id": null, + "textContent": "Save the detections as a label file in Audacity format. Select" + }, + { + "id": null, + "textContent": "File > Save Audacity Labels" + }, + { + "id": null, + "textContent": "from the menu. By default, the label file will have the same name as the audio file, with a \".txt\" extension." + }, + { + "id": null, + "textContent": "Example of using Chirpity" + }, + { + "id": null, + "textContent": "An introductory tour of the key features of Chirpity." + } +] \ No newline at end of file diff --git a/build/fix-fluent-ffmpeg-timeout.sh b/build/fix-fluent-ffmpeg-timeout.sh new file mode 100644 index 00000000..9bf80381 --- /dev/null +++ b/build/fix-fluent-ffmpeg-timeout.sh @@ -0,0 +1,16 @@ +#!/usr/bin/bash + +sed -i -e '/^\s*setTimeout(function() {/,/}, 20);/c\ + setTimeout(function() {\ + if (ffmpegProc.exitCode === null) {\ + emitEnd(new Error('\''Output stream closed'\''));\ + ffmpegProc.kill();\ + }\ + }, 5000);' ./node_modules/fluent-ffmpeg/lib/processor.js + + +PLATFORM='win32-x64' +BINARY='ffmpeg.exe' + +echo "copying ./build/$PLATFORM/$BINARY to ./node_modules/@ffmpeg-installer/$PLATFORM/$BINARY" +cp ./build/$PLATFORM/$BINARY ./node_modules/@ffmpeg-installer/$PLATFORM/$BINARY \ No newline at end of file diff --git a/build/get-text-for-translations.html b/build/get-text-for-translations.html new file mode 100644 index 00000000..909fa261 --- /dev/null +++ b/build/get-text-for-translations.html @@ -0,0 +1,114 @@ + + + + + Extract Text, Title, Data Attributes + + + +

+
+  
+
+
diff --git a/index.html b/index.html
index 810adb35..9f702880 100644
--- a/index.html
+++ b/index.html
@@ -213,7 +213,7 @@ 
                 
                 
                 
             
         
@@ -1270,7 +1270,7 @@ 
Saved Records
-
FAQs
+
FAQs
  • help What species are detected? @@ -1285,7 +1285,7 @@
    FAQs
  • diff --git a/js/tracking.js b/js/tracking.js index 44eb1247..8df76eb3 100644 --- a/js/tracking.js +++ b/js/tracking.js @@ -1,5 +1,5 @@ -const ID_SITE = 2; - +const ID_SITE = 3; +let VISITOR; function trackEvent(uuid, event, action, name, value){ // Squash result numbers name = typeof name == 'string' ? name.replace(/result\d+/, 'result') : name; @@ -17,6 +17,7 @@ function trackEvent(uuid, event, action, name, value){ } function trackVisit(config){ + VISITOR = config.UUID; const {width, height} = window.screen; fetch(`https://analytics.mattkirkland.co.uk/matomo.php?idsite=${ID_SITE}&rand=${Date.now()}&rec=1&uid=${config.UUID}&apiv=1 &res=${width}x${height} @@ -36,6 +37,25 @@ function trackVisit(config){ if (! response.ok) throw new Error('Network response was not ok', response); }) .catch(error => console.log('Error posting tracking:', error)) + setInterval(sendHeartbeat, 20 * 60 * 1000); // Send ping every 20 mins } +// Function to send the heartbeat request +function sendHeartbeat() { + const url = 'https://analytics.mattkirkland.co.uk/matomo.php'; + const params = new URLSearchParams({ + idsite: ID_SITE, // Matomo site ID + rec: '1', // Required to record the request + ping: '1', // Indicates this is a heartbeat request + visitorId: VISITOR // Replace with the actual visitor ID + }); + + fetch(`${url}?${params.toString()}`, { + method: 'GET' + }).then(() => { + console.log('Heartbeat sent'); + }).catch(error => { + console.error('Error sending heartbeat:', error); + }); +} export {trackEvent, trackVisit} \ No newline at end of file diff --git a/js/ui.js b/js/ui.js index aef29875..ea621c37 100644 --- a/js/ui.js +++ b/js/ui.js @@ -1737,6 +1737,9 @@ window.onload = async () => { // Show Locale DOM.locale.value = config[config.model].locale; + // Localise UI + localiseUI(DOM.locale.value) + // remember audio notification setting DOM.audioNotification.checked = config.audio.notification; @@ -3654,14 +3657,129 @@ function formatDuration(seconds){ sendFile('save', result) } + async function localiseModal(filename, locale) { + try { + // Fetch the HTML file + const htmlResponse = await fetch(filename); + if (!htmlResponse.ok) throw new Error(`Failed to load HTML file: ${filename}.html`); + + const htmlContent = await htmlResponse.text(); + + // Try fetching the localisation JSON file + let localisationData = {}; + try { + // Fetch the localisation JSON file + const basename = p.basename(filename, '.html') + const jsonResponse = await fetch(p.join('I18n', `${basename}.${locale}.json`)) + if (jsonResponse.ok) { + localisationData = await jsonResponse.json(); + } else { + console.warn(`JSON file not found: ${filename} parsed to ${locale}.json`); + return htmlContent; // Return unmodified HTML if JSON not found + } + } catch (error) { + console.warn(`Failed to fetch JSON file: ${filename} parsed to ${locale}.json`, error); + return htmlContent; // Return unmodified HTML if JSON fetch fails + } + + const parser = new DOMParser(); + const doc = parser.parseFromString(htmlContent, 'text/html'); + + // Update elements in the parsed HTML + for (const key in localisationData) { + if (localisationData.hasOwnProperty(key)) { + const element = doc.getElementById(key); + if (element) { + element.innerHTML = Array.isArray(localisationData[key]) + ? localisationData[key].join('
    ') + : localisationData[key]; + } + } + } + + // Return the modified HTML content as a string + return doc.documentElement.outerHTML; + } catch (error) { + console.error('Localisation Error:', error.message); + return null; // Return null if there was an error + } + } + + async function localiseUI(locale) { + try { + // Try fetching the localisation JSON file + let localisationData = {}; + try { + // Fetch the localisation JSON file + const basename = 'index'; + // If no localisation, default to English + if (! fs.existsSync(p.join('I18n', `${basename}.${locale}.json`))) { + // Let me know someone was looking for a non-existant locale + console.warn(`User requested ${locale}`); + locale = 'en'; + } + const jsonResponse = await fetch(p.join('I18n', `${basename}.${locale}.json`)) + if (jsonResponse.ok) { + localisationData = await jsonResponse.json(); + } else { + console.warn(`JSON file not found: ${filename} parsed to ${locale}.json`); + return; // Return unmodified HTML if JSON not found + } + } catch (error) { + console.warn(`Failed to fetch JSON file: ${filename} parsed to ${locale}.json`, error); + return; // Return unmodified HTML if JSON fetch fails + } + // Update elements + for (const key in localisationData) { + if (localisationData.hasOwnProperty(key)) { + const element = document.getElementById(key); + if (element) { + if (key.indexOf('circle-help') !==-1){ + // Help button popup text + element.setAttribute('data-bs-content', localisationData[key]); + // refresh the tooltip to reflect the change + const popover = new bootstrap.Popover(element); + popover.update(); + + } else { + // Replace the inner text of the
    tag but leave unaffected + const spans = element.querySelectorAll('span'); + element.textContent = ' ' + localisationData[key][0]; + spans.length && element.insertBefore(spans[0], element.firstChild); + spans.length > 1 && element.appendChild(spans[1]) + }; + // element.innerHTML = localisationData[key]; + + } + } + } + } catch (error) { + console.error('Localisation Error:', error.message); + } + } const populateHelpModal = async (file, label) => { document.getElementById('helpModalLabel').textContent = label; - const response = await fetch(file); - document.getElementById('helpModalBody').innerHTML = await response.text(); + const locale = config[config.model].locale.replace('_uk', ''); + const response = await localiseModal(file, locale) + document.getElementById('helpModalBody').innerHTML = response; const help = new bootstrap.Modal(document.getElementById('helpModal')); document.removeEventListener('show.bs.modal', replaceCtrlWithCommand); document.addEventListener('show.bs.modal', replaceCtrlWithCommand); + const close = { + fr: 'Fermer', + de: 'Schließen', + es: 'Cerrar', + pt: 'Fechar', + ru: 'Закрыть', + nl: 'Sluiten', + zh: '关闭', + sv: 'Stäng', // Swedish + da: 'Luk' // Danish + } + + console.log(close.locale) + document.getElementById('help-modal-close').innerText = close[locale] || 'Close'; help.show(); } function _replaceTextInTitleAttributes() { @@ -4403,6 +4521,70 @@ function playRegion(){ } } + const localeHelp = { + keyboard: { + en: 'Keyboard Shortcuts', + fr: 'Raccourcis clavier', + de: 'Tastenkombinationen', + es: 'Atajos de teclado', + pt: 'Atalhos de teclado', + ru: 'Горячие клавиши', + nl: 'Sneltoetsen', + zh: '键盘快捷键', + sv: 'Tangentbordsgenvägar', // Swedish + da: 'Tastaturgenveje' // Danish + }, + settings: { + en: 'Settings Help', + fr: 'Aide des paramètres', + de: 'Einstellungen Hilfe', + es: 'Ayuda de configuración', + pt: 'Ajuda de configurações', + ru: 'Помощь по настройкам', + nl: 'Instellingen help', + zh: '设置帮助', + sv: 'Inställningshjälp', // Swedish + da: 'Indstillinger Hjælp' // Danish + }, + usage: { + en: 'Usage Guide', + fr: 'Guide d\'utilisation', + de: 'Benutzerhandbuch', + es: 'Guía de uso', + pt: 'Guia de uso', + ru: 'Руководство пользователя', + nl: 'Gebruikershandleiding', + zh: '使用指南', + sv: 'Användarguide', // Swedish + da: 'Brugervejledning' // Danish + }, + eBird: { + en: 'eBird Record FAQ', + fr: 'FAQ des enregistrements eBird', + de: 'eBird Datensatz FAQ', + es: 'Preguntas frecuentes sobre los registros de eBird', + pt: 'FAQ de Registros do eBird', + ru: 'Часто задаваемые вопросы о записях eBird', + nl: 'eBird Record FAQ', + zh: 'eBird记录常见问题', + sv: 'eBird Poster FAQ', // Swedish + da: 'eBird Record FAQ' // Danish + }, + community: { + en: 'Join the Chirpity Users Community', + fr: 'Rejoindre la communauté des utilisateurs de Chirpity', + de: 'Treten Sie der Chirpity-Benutzergemeinschaft bei', + es: 'Únete a la comunidad de usuarios de Chirpity', + pt: 'Junte-se à comunidade de usuários do Chirpity', + ru: 'Присоединиться к сообществу пользователей Chirpity', + nl: 'Word lid van de Chirpity-gebruikersgemeenschap', + zh: '加入Chirpity用户社区', + sv: 'Gå med i Chirpity-användargemenskapen', // Swedish + da: 'Bliv medlem af Chirpity-brugerfællesskabet' // Danish + } + } + + document.addEventListener('click', function (e) { const element = e.target; @@ -4459,15 +4641,15 @@ function playRegion(){ if (STATE.currentFile) updateList(); break; } - + // Help Menu - case 'keyboardHelp': { (async () => await populateHelpModal('Help/keyboard.html', 'Keyboard shortcuts'))(); break } - case 'settingsHelp': { (async () => await populateHelpModal('Help/settings.html', 'Settings Help'))(); break } - case 'usage': { (async () => await populateHelpModal('Help/usage.html', 'Usage Guide'))(); break } - case 'bugs': { (async () => await populateHelpModal('Help/bugs.html', 'Join the Chirpity Users community'))(); break } + case 'keyboardHelp': { (async () => await populateHelpModal('Help/keyboard.html', localeHelp.keyboard[config[config.model].locale]))(); break } + case 'settingsHelp': { (async () => await populateHelpModal('Help/settings.html', localeHelp.settings[config[config.model].locale]))(); break } + case 'usage': { (async () => await populateHelpModal('Help/usage.html', localeHelp.usage[config[config.model].locale]))(); break } + case 'bugs': { (async () => await populateHelpModal('Help/community.html', localeHelp.community[config[config.model].locale]))(); break } case 'species': { worker.postMessage({action: 'get-valid-species', file: STATE.currentFile}); break } case 'startTour': { prepTour(); break } - case 'eBird': { (async () => await populateHelpModal('Help/ebird.html', 'eBird Record FAQ'))(); break } + case 'eBird': { (async () => await populateHelpModal('Help/ebird.html', localeHelp.eBird[config[config.model].locale]))(); break } case 'copy-uuid': { // Get the value from the input element const copyText = document.getElementById('uuid').textContent.split('\n')[0]; @@ -4709,6 +4891,7 @@ function playRegion(){ } else { const chirpity = element.value === 'en_uk' && config.model !== 'birdnet' ? 'chirpity' : ''; labelFile = `labels/V2.4/BirdNET_GLOBAL_6K_V2.4_${chirpity}Labels_${element.value}.txt`; + localiseUI(element.value) } config[config.model].locale = element.value; readLabels(labelFile, 'locale'); diff --git a/playwright.config.ts b/playwright.config.ts index 10cd125a..6fd72508 100644 --- a/playwright.config.ts +++ b/playwright.config.ts @@ -24,5 +24,6 @@ export default defineConfig({ // Change the default data-testid attribute. //testIdAttribute: 'pw-test-id', }, + }); diff --git a/test/export.audio.spec.ts b/test/export.audio.spec.ts new file mode 100644 index 00000000..0463ab58 --- /dev/null +++ b/test/export.audio.spec.ts @@ -0,0 +1,136 @@ +import { _electron as electron } from 'playwright'; +import { test, expect } from '@playwright/test'; +import { + findLatestBuild, + ipcMainCallFirstListener, + ipcRendererCallFirstListener, + parseElectronApp, + ipcMainInvokeHandler, + ipcRendererInvoke, + ipcRendererSend, + ipcMainEmit, + stubMultipleDialogs +} from 'electron-playwright-helpers'; +import { ElectronApplication, Page } from 'playwright'; +import {changeSettings, openExampleFile, runExampleAnalysis} from './helpers'; +//import {Jimp} from 'jimp'; + +let electronApp: ElectronApplication; +let page: Page; +let worker: Page; +let example_file: any + +test.beforeAll(async () => { + // find the latest build in the out directory + const latestBuild = findLatestBuild('./dist') + // parse the directory and find paths and other info + const appInfo = parseElectronApp(latestBuild) + // set the CI environment variable to true + process.env.CI = 'e2e'; + electronApp = await electron.launch({ + args: [appInfo.main], + executablePath: appInfo.executable, + env: { + ...process.env, + TEST_ENV: 'true' + } + + }) + + // Get the path for the example file we want to load + example_file = await ipcMainInvokeHandler(electronApp, 'getAudio') + await stubMultipleDialogs(electronApp, [ + { + method: 'showOpenDialog', + value: { + filePaths: [example_file], + canceled: false, + }, + }, + { + method: 'showSaveDialog', + value: { + filePath: '/path/to/file', + canceled: false, + }, + }, + ]) + worker = await electronApp.firstWindow() + + electronApp.on('window', async (window) => { + const filename = window.url()?.split('/').pop() + console.log(`Window opened: ${filename}`) + page = window; + page.on('pageerror', (error) => { + console.error(error) + }) + // capture console messages + page.on('console', (msg) => { + console.log(msg.text()) + }) + }) + await new Promise((resolve) => { + const checkPage = setInterval(async () => { + if (page) { + clearInterval(checkPage); + resolve(''); + } + }, 5000); + }); +}) + +test.afterAll(async () => { + //await page.pause() + await electronApp.close() +}) + +test.describe.configure({ mode: 'parallel', retries: 2, timeout: 20_000 }); + +/* +REMEMBER TO REBUILD THE APP IF THE *APPLICATION CODE* NEEDS TO BE CHANGED + ---------------- +*/ + + +test('Export mp3 works', async () => { + await runExampleAnalysis(page,'chirpity'); + await changeSettings(page, 'select', 'format', 'mp3', 0) + await page.locator('region').click({button: 'right'}); + await page.locator('#context-create-clip').click(); + await dialog.accept(); +}) + + +test(`Nocmig analyse works and second result is 61%`, async () => { + await runExampleAnalysis(page,'chirpity'); + const callID = page.locator('#speciesFilter').getByText('Redwing (call)'); + expect(callID).not.toBe(undefined) + const secondResult = await (await page.waitForSelector('#result2 span.confidence-row > span')).textContent() + // console.log(secondResult, 'second result'); + expect(secondResult).toBe('61%'); +}) + +test(`BirdNET analyse works and second result is 34%`, async () => { + await runExampleAnalysis(page, 'birdnet'); + const callID = page.locator('#speciesFilter').getByText('Redwing (call)'); + expect(callID).not.toBe(undefined) + const secondResult = await (await page.waitForSelector('#result2 span.confidence-row > span')).textContent() + // console.log(secondResult, 'second result'); + expect(secondResult).toBe('34%'); +}) + + + + +test("Amend file start dialog contains date", async () =>{ + await runExampleAnalysis(page, 'chirpity'); + await page.locator('#dropdownMenuButton').click({button: 'right'}); + await page.locator('#setFileStart').click(); + const fileStart = await page.locator('#fileStart'); + const entry = await fileStart.inputValue(); + const currentYear = new Date().getFullYear().toString(); + expect(entry.toString()).toContain(currentYear); + // await page.locator('#spectrogramWrapper button.btn-secondary').click(); +}) + + diff --git a/test/helpers.ts b/test/helpers.ts new file mode 100644 index 00000000..ba4df337 --- /dev/null +++ b/test/helpers.ts @@ -0,0 +1,38 @@ + +import { ElectronApplication, Page } from 'playwright'; + +let page: Page; + +async function openExampleFile(page: Page){ + await page.locator('#navBarFile').click() + await page.locator('#open-file').click() + await page.locator('wave').first().waitFor({state: 'visible'}) + } + + async function changeSettings(page: Page, type: string, elementID: string, value: any, timeout: number){ + elementID = '#' + elementID; + await page.locator('#navbarSettings').click(); + // for Birdnet's 34%$ + await page.locator('#confidence').fill('30'); + if (type === 'select'){ + await page.selectOption(elementID, value); + } else if (type === 'switch'){ + await page.locator(elementID).setChecked(value); + } else { + await page.locator(elementID).fill(value); + } + await page.locator('#close-settings').click(); + // Wait ? + if (timeout) await page.waitForTimeout(timeout); + } + + async function runExampleAnalysis(page: Page, model: string){ + await openExampleFile(page) + await changeSettings(page,'select', 'model-to-use', model, 5000) + + await page.locator('#navbarAnalysis').click() + await page.locator('#analyse').click() + await page.locator('#resultTableContainer').waitFor({state: 'visible'}) + } + + export {changeSettings, openExampleFile, runExampleAnalysis} \ No newline at end of file diff --git a/test/menu.spec.ts b/test/menu.spec.ts index dc8a1480..cdcb844c 100644 --- a/test/menu.spec.ts +++ b/test/menu.spec.ts @@ -12,7 +12,8 @@ import { stubMultipleDialogs } from 'electron-playwright-helpers'; import { ElectronApplication, Page } from 'playwright'; -import jimp from 'jimp'; +import {changeSettings, openExampleFile, runExampleAnalysis} from './helpers'; +//import {Jimp} from 'jimp'; let electronApp: ElectronApplication; let page: Page; @@ -72,7 +73,7 @@ test.beforeAll(async () => { const checkPage = setInterval(async () => { if (page) { clearInterval(checkPage); - resolve(); + resolve(''); } }, 5000); }); @@ -107,41 +108,9 @@ test('Page title is correct', async () => { expect(title).toBe('Chirpity Bird Call Detection') }) -async function openExampleFile(){ - await page.locator('#navBarFile').click() - await page.locator('#open-file').click() - await page.locator('wave').first().waitFor({state: 'visible'}) -} - -async function changeSettings(type, elementID, value, timeout){ - elementID = '#' + elementID; - await page.locator('#navbarSettings').click(); - // for Birdnet's 34%$ - await page.locator('#confidence').fill('30'); - if (type === 'select'){ - await page.selectOption(elementID, value); - } else if (type === 'switch'){ - await page.locator(elementID).setChecked(value); - } else { - await page.locator(elementID).fill(value); - } - await page.locator('#close-settings').click(); - // Wait ? - if (timeout) await page.waitForTimeout(timeout); -} - -async function runExampleAnalysis(model){ - await openExampleFile() - await changeSettings('select', 'model-to-use', model, 5000) - - await page.locator('#navbarAnalysis').click() - await page.locator('#analyse').click() - await page.locator('#resultTableContainer').waitFor({state: 'visible'}) -} - test(`Nocmig analyse works and second result is 61%`, async () => { - await runExampleAnalysis('chirpity'); + await runExampleAnalysis(page,'chirpity'); const callID = page.locator('#speciesFilter').getByText('Redwing (call)'); expect(callID).not.toBe(undefined) const secondResult = await (await page.waitForSelector('#result2 span.confidence-row > span')).textContent() @@ -150,7 +119,7 @@ test(`Nocmig analyse works and second result is 61%`, async () => { }) test(`BirdNET analyse works and second result is 34%`, async () => { - await runExampleAnalysis('birdnet'); + await runExampleAnalysis(page, 'birdnet'); const callID = page.locator('#speciesFilter').getByText('Redwing (call)'); expect(callID).not.toBe(undefined) const secondResult = await (await page.waitForSelector('#result2 span.confidence-row > span')).textContent() @@ -179,7 +148,7 @@ test(`BirdNET analyse works and second result is 34%`, async () => { // }) test("Amend file start dialog contains date", async () =>{ - await runExampleAnalysis('chirpity'); + await runExampleAnalysis(page, 'chirpity'); await page.locator('#dropdownMenuButton').click({button: 'right'}); await page.locator('#setFileStart').click(); const fileStart = await page.locator('#fileStart');