Was dieses Werkzeug tut
Die Morse-Werkstatt macht aus einem Audiosignal wieder Text. Sie arbeitet
in zwei Betriebsarten: Datei analysiert eine fertige Aufnahme am Stück,
Live hört über das Mikrofon mit und schreibt laufend mit.
Beide Betriebsarten benutzen denselben Verarbeitungskern. Der Unterschied ist nicht,
dass die Datei „global" und der Live-Betrieb „dynamisch" rechnet - beide führen alle
Parameter laufend nach. Der Unterschied ist der Zeithorizont: live ist nur die
Vergangenheit bekannt, eine Datei darf zusätzlich rückwärts gelesen werden.
Dieser Unterschied ist inzwischen kleiner geworden: im Live-Betrieb läuft die
Datei-Auswertung um einige Sekunden versetzt mit und ersetzt den zuerst ausgegebenen
Text - siehe Nachlaufende Korrektur.
Alles läuft ausschließlich im Browser. Es gibt kein Backend, nichts wird hochgeladen,
und weder Audio noch dekodierter Text verlassen dieses Gerät.
Automatikbetrieb
Der Schalter Automatik unter den Reglern ist die wichtigste Einstellung.
Ist er gesetzt - die Vorgabe -, bestimmt das Werkzeug selbst:
- Träger - global gesucht und danach laufend nachgeführt
- Schwelle - folgt Schwund und wechselndem Rauschpegel
- Dit - folgt der Gebegeschwindigkeit
- Mindestlänge - die halbe Länge des kürzesten tatsächlich vorkommenden Elements, nicht ein geratener Bruchteil des Dits
- Dit/Dah-Grenze, Buchstabe, Wort - aus der tatsächlichen Längenverteilung
geclustert statt aus der Theorie angenommen
Diese Regler sind dann gesperrt und zeigen nur noch an, was der Schätzer ermittelt hat.
Von Hand bleiben Bandbreite, Tiefpass, Brücke und - nur live - die
Rauschsperre. Wer eingreifen will, schaltet die Automatik ab; die Knöpfe
Ton automatisch und Dit optimieren tun das von sich aus, weil sie
Handeingaben sind.
Warum die Mindestlänge aus dem Dit kommt: Ein Störimpuls ist
definitionsgemäß kurz gegenüber dem Punkt, nicht kurz in Millisekunden. Bei
20 WPM ist ein Punkt 60 ms lang, bei 8 WPM 150 ms - ein fester Wert kann nicht für
beides stimmen. Und weil nicht jeder Geber das Lehrbuchverhältnis einhält, wird
nicht einmal vom Dit ausgegangen, sondern von den Punkten, die wirklich vorkommen. Zu klein eingestellt überleben Tastklicks und erzeugen zusätzliche
Punkte am Zeichenanfang; das ist die häufigste Ursache für Fehler wie
&UT statt BUT.
Signalkette Schritt für Schritt
Ein Morsesignal ist ein einzelner Pfeifton, der ein- und ausgeschaltet wird. Die gesamte
Verarbeitung besteht darum darin, diesen einen Ton vom Rest zu trennen, seine Lautstärke
über die Zeit zu verfolgen und die Ein-/Aus-Muster zu vermessen.
1 · Trägersuche (FFT)
Zuerst wird das Spektrum berechnet und im Bereich 300-1500 Hz der stärkste Gipfel gesucht.
Dessen Frequenz ist der Träger f0. Ein Parabel-Interpolationsschritt auf
den logarithmierten Beträgen liefert dabei eine feinere Auflösung, als die FFT-Bins allein
hergeben. Im Datei-Modus wird über die ganze Aufnahme gesucht - das gibt mehr
Frequenzauflösung und fällt nicht auf einen Störträger herein, der nur am Anfang steht.
2 · Bandpass um den Träger
Zwei hintereinandergeschaltete Biquad-Bandpassfilter mit Mittenfrequenz f0 und
der eingestellten Bandbreite lassen praktisch nur noch den Morseton durch. Alles
daneben - Nachbarstationen, Brummen, Sprache - wird gedämpft. Zwei Stufen statt einer, weil
die Flanken damit deutlich steiler werden. Die Mittenfrequenz wird während der Verarbeitung
nachgestimmt, ohne den Filterzustand zu verwerfen.
3 · Hüllkurve (Gleichrichtung + Tiefpass)
Der gefilterte Ton wird gleichgerichtet (Betrag) und mit dem Tiefpass geglättet. Übrig
bleibt die Hüllkurve: eine langsame Kurve, die nur noch sagt "hier ist Ton" / "hier ist
kein Ton". Anschließend wird auf etwa 1000 Werte pro Sekunde dezimiert - damit ist die
Zeitauflösung 1 ms, unabhängig davon, ob die Aufnahme mit 8 kHz oder 48 kHz vorliegt.
4 · Schwelle setzen
Aus der Hüllkurve muss eine Ja/Nein-Entscheidung werden. Zwei Schätzer verfolgen getrennt den
Rauschboden und den Signalpegel. Die Schwelle liegt normalerweise bei der
Halbamplitude des Signalpegels - das klassische Kriterium für Impulsdauern, weil die
gemessene Länge damit unabhängig von der Flankensteilheit wird. Erst wenn der Störabstand
dafür zu klein ist, übernimmt das geometrische Mittel zwischen Rauschen und Signal und hält
die Schwelle sicher über dem Rauschboden. Eine Hysterese (Schmitt-Trigger) verhindert
Flattern an der Kante.
5 · Segmentierung in Runs
Die Zustandsmaschine wandelt die Ja/Nein-Folge in Runs um - Abschnitte der Form
"Ton, 180 ms" oder "Pause, 60 ms". Dabei greifen zwei Korrekturen: die Mindestlänge
wirft zu kurze Ausreißer weg, die Brücke schließt kurze Löcher innerhalb eines Tons.
Ein verworfener Ausreißer wird dabei immer dem umgebenden Run zugeschlagen - zwei
gleichartige Runs können nie hintereinander stehen. Sonst würde ein einziger Störimpuls
eine Wortlücke in zwei kurze Pausen zerlegen, und aus WHO BELIEVES würde
WHOBELIEVES.
6 · Dit-Schätzung
Das Dit ist die Grundzeiteinheit. Alle Morselängen sind Vielfache davon: Punkt = 1,
Strich = 3, Pause im Zeichen = 1, zwischen Buchstaben = 3, zwischen Wörtern = 7. Die
Werkstatt probiert viele Dit-Kandidaten durch und bewertet jeden danach, wie gut die
gemessenen Runs auf dieses Raster passen. Der beste Wert gewinnt; sein Punktwert ist die
Plausibilität. Geschätzt wird über ein gleitendes Fenster, nicht über alles auf
einmal - dadurch darf sich das Tempo im Verlauf ändern.
7 · Zeitgrenzen (Clustering)
Wo genau ein Punkt zum Strich und eine Zeichenpause zur Wortpause wird, folgt nicht aus der
Theorie, sondern aus der Handschrift des Gebers. Die gemessenen Längen werden darum in
Klassen geclustert: Töne in zwei (1 und 3), Pausen in drei (1, 3 und 7), jeweils auf
logarithmierten Dauern. Die Grenze liegt im geometrischen Mittel benachbarter
Clusterzentren.
Theoretisch ergäbe das 1,73 für Punkt/Strich und Buchstabe sowie 4,58 für das Wort. Reale
Aufnahmen weichen davon regelmäßig ab - und genau diese Abweichung sucht das Clustering.
Finden sich zu wenige Runs oder liegen die Klassen zu dicht beieinander, gelten wieder die
theoretischen Werte. Die Statuszeile zeigt die drei aktuellen Grenzen an, mit dem Zusatz
(geclustert), wenn sie aus den Daten stammen.
8 · Dekodierung und Konfidenz
Mit bekanntem Dit und bekannten Grenzen wird jeder Ton-Run zu Punkt oder Strich, jede längere
Pause beendet einen Buchstaben oder ein Wort. Die entstehende Punkt-Strich-Folge wird in der
Morsetabelle nachgeschlagen; unbekannte Folgen erscheinen als <.-.-> in
spitzen Klammern statt still verworfen zu werden.
Zusätzlich bekommt jedes Zeichen eine Konfidenz: für jeden beteiligten Run wird der
logarithmische Abstand zum nächstliegenden erlaubten Vielfachen gemessen, und der
schlechteste dieser Werte zählt. Ein Ton von 1,7 Dit passt weder zu 1 noch zu 3 - er ist
ein Zweifelsfall, ganz gleich, wie die Entscheidung ausfällt. Solche Zeichen erscheinen im
Textfeld gedimmt und rot punktiert unterstrichen. Das ist die Fehlererkennung: nicht
eine Aussage über den ganzen Text, sondern der Fingerzeig auf die Stelle, an der es hakt.
Betriebsart "Datei"
- Audio laden… oder Datei irgendwohin ins Fenster ziehen. Unterstützt wird, was der
Browser dekodieren kann - in der Regel MP3, WAV, OGG, FLAC, M4A.
- Mit eingeschalteter Automatik ist danach nichts mehr zu tun: das Ergebnis steht sofort
im Textfeld, und die gesperrten Regler zeigen, womit gerechnet wurde.
- Bleibt etwas unklar, helfen Bandbreite und Tiefpass weiter; erst danach
lohnt es, die Automatik abzuschalten.
Die Analyse läuft in vier Durchgängen:
| Durchgang | was passiert |
| A · Vorlauf | Trägersuche, Otsu-Schwelle und bestes Dit über die ganze
Datei. Diese Werte werden nicht direkt benutzt, sondern dienen als Startpunkt -
damit die Schätzer eingeschwungen loslaufen. |
| B · vorwärts | Dieselben Schätzer wie im Live-Betrieb laufen über die
Hüllkurve und schreiben Schwelle und Dit als Zeitreihen mit. |
| C · rückwärts | Dasselbe noch einmal auf der umgedrehten Hüllkurve. Das
ist der eigentliche Vorteil des Datei-Modus: er kennt die Zukunft, die es live nicht
gibt. Beide Spuren werden gemittelt, wodurch der Einschwingfehler am Anfang
verschwindet. |
| D · final | Segmentierung mit den fertigen Spuren, Clustering der
Zeitgrenzen, Dekodierung. |
Was während der Wartezeit passiert: Die Auswertung läuft
in einem Web Worker, nicht im Vordergrund. Bei der Erstverarbeitung liegt
eine Wartemarke über dem Bedienbereich, die den laufenden Schritt und die
verstrichene Zeit nennt; beim späteren Ziehen an den Reglern gibt es keine
Sperre, sondern nur einen kleinen Punkt an der Statuszeile.
Nicht jeder Regler kostet gleich viel. Bandbreite und Tiefpass —
und im Handbetrieb der Träger — verändern die Hüllkurve selbst, also die
Schritte 1 bis 3; das ist der teure Teil und wird jedes Mal neu gerechnet. Alle
übrigen Regler wirken erst ab Schritt 4 und bekommen die zuletzt berechnete
Hüllkurve vorgesetzt. Das Nachrechnen dauert dann nur noch einen Bruchteil.
Mehrkanalige Dateien werden zu Mono gemittelt. Die Analyse ist rein rechnerisch - es wird
nichts abgespielt. Wandert das Dit im Verlauf merklich, weist die Statuszeile darauf hin.
Zoom in der Hüllkurve: mit gedrückter Maustaste einen Bereich aufziehen
vergrößert ihn, Doppelklick zeigt wieder alles. Das ist der schnellste Weg, um einzelne
Zeichen zu begutachten - besonders die, die gedimmt angezeigt werden.
Betriebsart "Live"
- Mikrofon auswählen (die Namen erscheinen erst nach der ersten Freigabe) und Start
drücken.
- Die Lampe Träger leuchtet, sobald ein Ton gefunden wurde; die Lampe Signal
zeigt an, dass die Rauschsperre offen ist.
- Der Text wächst laufend; das gerade entstehende Zeichen steht blass dahinter.
- ● REC nimmt parallel auf. Aufnahmen landen in der Liste, lassen sich anhören, als
WAV herunterladen oder mit einem Klick in den Datei-Modus übernehmen.
- Leeren setzt Text und alle vier Grafiken zurück, ohne die Seite neu zu laden.
Der Knopf ist nur im gestoppten Zustand freigegeben - mitten in einer laufenden
Erkennung soll dem Dekoder nichts unter den Füßen weggezogen werden. Reglerstellungen
und die Liste der Aufnahmen bleiben erhalten; Aufnahmen werden einzeln mit dem
✕ in der Liste verworfen.
Der Live-Pfad führt alles selbst nach: die Trägerfrequenz (AFC, folgt driftenden
Sendern), die Schwelle (folgt Schwund), das Dit (folgt dem Tempo) sowie
Mindestlänge und Zeitgrenzen, die dem Dit und der Längenverteilung folgen.
Solange kein Träger gefunden ist, wird bewusst gar nicht dekodiert - Fehlsegmente würden
sonst Text, Schwelle und Dit-Schätzung gleichzeitig vergiften.
Der dabei verpasste Anfang geht trotzdem nicht verloren: das Rohaudio der letzten Sekunden
wird ohnehin mitgeschrieben. Sobald der Träger steht, läuft dieser Puffer - bis zu
20 Sekunden zurück - einmal komplett durch die Datei-Pipeline, und das Ergebnis wird als
Kopf des Textes eingesetzt. Erst danach übernimmt wieder die laufende Kette.
Nachlaufende Korrektur
Der Live-Pfad ist kausal: er kennt in jedem Augenblick nur die Vergangenheit und
muss mit Schätzern arbeiten, die am Anfang noch nicht eingeschwungen sind. Eine Datei
darf zusätzlich rückwärts gelesen werden und wird deshalb systematisch besser dekodiert.
Genau diesen Vorsprung holt der Korrekturlauf nach.
Im Hintergrund läuft dafür ein Web Worker mit. Etwa alle vier Sekunden bekommt er
ein zurückliegendes Fenster der Hüllkurve - höchstens 26 Sekunden lang und mit rund acht
Sekunden Rückstand auf die Gegenwart - und schickt es durch dieselbe Auswertung, die auch
der Datei-Modus benutzt, Rückwärtslauf inbegriffen. Sein Ergebnis ersetzt den vorher live
ausgegebenen Text. Übertragen wird dabei nur die Hüllkurve, nicht das Rohaudio: rund
4 kB je Sekunde statt bis zu 190.
Der Text entsteht dadurch an zwei Stellen gleichzeitig - hinten wächst er live
weiter, ein Stück davor wird er nachträglich berichtigt. Was noch nicht bestätigt ist,
steht blasser da; die Statuszeile nennt mit korrigiert bis … den
Zeitpunkt, bis zu dem der Text endgültig ist.
Warum nur in der Mitte einer Pause geschnitten wird: Ein
Korrekturfenster darf nur dort enden, wo sicher kein Zeichen liegt. An einer
Zeichengrenze geschnitten würden Zeichen doppelt erscheinen oder verschwinden - je
nachdem, ob der Live-Pfad sie ein paar Millisekunden früher oder später gestempelt hat
als der Korrekturlauf.
Der bereits aus dem Rohaudio nachdekodierte Anfang bleibt unangetastet: er ist schon mit
Trägersuche und Rückwärtslauf entstanden und wird durch ein zweites Mal Rechnen nicht
besser. Steht kein Worker zur Verfügung - alter Browser oder eine CSP ohne
worker-src blob: -, läuft der Live-Modus einfach ohne Korrektur weiter.
Mikrofonzugriff braucht HTTPS.
Automatische Verstärkungsregelung, Echo-Unterdrückung und Rauschunterdrückung des Systems
werden gezielt abgeschaltet: Sie sind auf Sprache optimiert und würden die Hüllkurve genau
dort verbiegen, wo hier die Information sitzt.
Die Regler im Einzelnen
Ausgegraute Regler sind gesperrt - entweder weil sie in der aktuellen Betriebsart
wirkungslos sind oder weil die Automatik sie selbst setzt. Dieselben Erklärungen stehen
auch hinter dem ? neben jedem Regler.
| Regler | Automatik | Bedeutung und Wirkung |
| Bandbreite [Hz] | von Hand | Breite des Bandpasses um den Träger.
Schmal (20-50 Hz) unterdrückt Nachbarstationen stark, verlangt aber einen exakt
getroffenen Träger und verschleift schnelle Gebeweise. Breit (100-200 Hz) ist
gutmütig gegenüber Frequenzabweichungen, lässt aber mehr Störungen durch.
Standard 80 Hz. |
| Tiefpass [Hz] | von Hand | Glättung der Hüllkurve. Niedrig
(10-25 Hz) gibt eine ruhige Kurve, rundet aber die Flanken ab und kann bei sehr
schnellem Geben Punkte verschlucken. Hoch (60-100 Hz) erhält scharfe Kanten, lässt
dafür mehr Zappeln stehen. Faustregel: mindestens etwa das Fünffache der
Punkte-pro-Sekunde-Rate. |
| Brücke [ms] | von Hand | Kurze Einbrüche innerhalb eines Tons, die
kürzer als dieser Wert sind, werden überbrückt statt als Pause gewertet. Hilft bei
kratzenden Kontakten und Fading, das mitten in einen Strich fällt. Zu groß
eingestellt verschmelzen echte Zeichenpausen. Standard 0 (aus). |
| Rauschsperre | von Hand, nur live | 0 schaltet sie ab, höhere Werte
sind strenger. Sie vergleicht die Energie im Trägerkanal mit zwei Nachbarkanälen:
echtes Morse ist schmalbandig und liegt fast nur im Trägerkanal, Sprache und
Rauschen verteilen sich breit. Bleiben zwischen den Sendungen Müllzeichen stehen:
erhöhen. Wird eine schwache Station gar nicht mehr aufgenommen: senken. |
| Träger [Hz] | automatisch | Mittenfrequenz des Morsetons. Wird global
gesucht und laufend nachgeführt. Die gestrichelte Linie im Spektrum zeigt, wo er
gerade steht. Von Hand nur nötig, wenn der Automat auf einen Störträger gefallen
ist. |
| Schwelle [%] | automatisch | Manuelle Entscheidungsschwelle als
Perzentil der Hüllkurvenwerte. Nur im Datei-Modus, nur bei abgeschalteter Automatik
und nur, wenn zusätzlich "Schwelle per Otsu" aus ist. Höher = strenger, niedriger =
großzügiger. |
| Mindestlänge [ms] | automatisch | Segmente kürzer als dieser Wert
gelten als Störimpuls und werden dem Nachbarn zugeschlagen. Die Automatik leitet den
Wert aus der gemessenen Punkt-Klasse ab: halb so lang wie ein typischer Punkt
dieses Gebers, begrenzt auf 4…40 ms. Von Hand nur
sinnvoll, wenn eine Aufnahme ungewöhnlich stark knackt. |
| Dit [ms] | automatisch | Länge des Punktes, die Grundzeiteinheit.
Legt indirekt alle anderen Zeitgrenzen fest. Die Statuszeile rechnet den Wert in
WPM um (WPM ≈ 1200 / Dit in ms). |
| Dit/Dah-Grenze [×] | automatisch | Ab dem Wievielfachen des Dits ein
Ton als Strich statt als Punkt gilt. Theoretisch 1,73 (geometrisch zwischen 1 und
3); das Clustering findet den Wert, der zur tatsächlichen Gebeweise passt. |
| Buchstabe [×] | automatisch | Ab welcher Pausenlänge (in Dits) ein
Buchstabe als beendet gilt. Theoretisch 1,73. |
| Wort [×] | automatisch | Ab welcher Pausenlänge ein Leerzeichen
gesetzt wird. Theoretisch 4,58. Gerade hier weichen reale Aufnahmen oft ab -
Wortlücken zwischen 4 und 7 Dit sind der Normalfall, nicht die Ausnahme. |
| Schwelle per Otsu | nur im Handbetrieb | Ermittelt eine feste
Schwelle für die ganze Datei, indem sie den Punkt sucht, der Rausch- und Signalwerte
am saubersten trennt. Im Automatikbetrieb wird Otsu nur noch als Startwert für die
nachgeführte Schwelle benutzt. |
Die vier Grafiken lesen
Spektrum
Frequenzachse gegen Pegel in dB. Der Morseton ist ein deutlicher schmaler Gipfel;
die gestrichelte senkrechte Linie markiert den eingestellten Träger. Sitzt die
Linie neben dem Gipfel, ist die Trägerfrequenz falsch - das ist die häufigste
Ursache für gar kein oder wirres Ergebnis.
Hüllkurve
Zeitachse gegen Signalstärke nach dem Filter, mit der Schwelle als gestrichelter Kurve.
Hier sieht man Morse direkt als Rechteckmuster. Gut ist: klare Plateaus deutlich
über und Täler deutlich unter der Kurve. Schlecht ist: die Kurve schneidet mitten
durchs Signal oder liegt im Rauschen. Die Schwelle ist in beiden Betriebsarten
zeitabhängig - sie wandert sichtbar mit dem Pegel. Bleibt sie waagerecht, ist der Pegel
stabil; das ist eine Aussage, keine fehlende Funktion.
Längenverteilung + Dit-Raster
Histogramm aller gemessenen Segmentlängen in Millisekunden, dazu senkrechte Marken
bei 1× bis 7× Dit. Bei sauberem Empfang bilden sich deutliche Häufungen genau auf
den Marken - typischerweise große Berge bei 1 und 3. Liegen die Berge systematisch
zwischen den Marken, stimmt das Dit nicht. Wandert das Dit über die Aufnahme, sind die
Längen für diese Darstellung auf ein einheitliches Dit umgerechnet.
Vielfache des Dit
Wie oft trat welches ganzzahlige Vielfache auf - blau für Töne, amber für Pausen.
Erlaubt sind bei Tönen nur 1 und 3, bei Pausen 1, 3 und 7. Hohe Balken auf der 2
sind das klassische Warnzeichen: das Dit ist um etwa den Faktor 1,5 daneben, oder
die Gebeweise ist sehr ungleichmäßig.
Statuszeile, Konfidenz und Lampen
Die Zeile über den Grafiken fasst laufend zusammen: Anzahl der Ein-/Aus-Segmente, aktuelles
Dit mit WPM-Umrechnung, die drei geltenden Zeitgrenzen, die Rasterkonformität, die
Häufigkeiten der Vielfachen und die Zahl der unsicheren Zeichen. Sie färbt sich rot, wenn die Plausibilität unter 80 %
fällt. Wandert das Dit über die Aufnahme, steht dessen Spannweite dabei.
Zwei Werte sind zu unterscheiden, und nur einer davon ist ein Qualitätsurteil.
Raster sagt, wie gut die gemessenen Längen auf das Lehrbuchverhältnis 1 : 3 : 7
passen. Ein niedriger Wert heißt nicht, dass der Text falsch ist - er heißt, dass
ungleichmäßig getastet wurde oder die Gebeweise vom Standard abweicht. Handgetastete und
absichtlich „vermenschlichte" Sendungen kommen regelmäßig auf 60-70 % und sind trotzdem
fehlerfrei lesbar. Erst unter etwa 40 % ist zu bezweifeln, dass es überhaupt Morse ist.
Unsichere Zeichen ist das eigentliche Warnsignal. Die Konfidenz misst je Zeichen den
Abstand seiner Elemente zum nächstliegenden erlaubten Vielfachen - aber gemessen an der
Streuung dieses Gebers, nicht an einem festen Maßstab. Bei einem gleichmäßigen
Geber ist die Latte hoch, bei einem zappeligen tiefer. „Unsicher" heißt damit
„ungewöhnlich für diese Sendung" und nicht „ungewöhnlich für ein Lehrbuch". Steigt der
Anteil über 15 %, warnt die Statuszeile.
Einzelne gedimmte Zeichen sind der Normalfall. Viele am Stück deuten auf ein Problem in
der Segmentierung - dort lohnt der Zoom in die Hüllkurve.
Davon zu unterscheiden ist blasser Text ohne Unterstreichung: das ist der noch nicht
bestätigte Teil, den der nachlaufende Korrekturlauf jederzeit ersetzen darf - es gibt ihn
nur im Live-Betrieb. Wie weit der Text endgültig ist, steht in der Statuszeile hinter
korrigiert bis.
Die Lampe Träger leuchtet, sobald ein Ton sicher gefunden wurde. Die Lampe
Signal zeigt, dass die Rauschsperre gerade offen ist - bleibt sie während
einer Sendung dunkel, ist die Rauschsperre zu streng eingestellt.
Praxisrezepte bei Problemen
Mit eingeschalteter Automatik bleiben nur noch wenige Fälle, in denen von Hand einzugreifen
ist. Die Reihenfolge ist immer dieselbe: erst das Spektrum, dann die Hüllkurve, dann die
Längenverteilung - und erst ganz zuletzt die Regler.
| Symptom | Vorgehen |
| Wartemarke steht lange | Normal bei langen Aufnahmen, die
verstrichene Zeit läuft mit. Wer viel probiert: Bandbreite und Tiefpass
sind die einzigen Regler, die die Hüllkurve neu berechnen — alles andere
geht deutlich schneller. |
| gar kein Text | Spektrum ansehen: steht die gestrichelte Linie auf dem
Gipfel? Wenn nein, liegt entweder ein stärkerer Störträger daneben (Bandbreite
verschmälern) oder der Ton liegt außerhalb 300-1500 Hz. |
| einzelne gedimmte Zeichen | Normalfall bei ungleichmäßiger Gebeweise. In
der Hüllkurve auf die Stelle zoomen und nachsehen, ob dort wirklich etwas
Grenzwertiges steht. |
| ganze Passagen gedimmt | Dort stimmt die Segmentierung nicht. Meist ist
das Signal an der Schwelle zerhackt: Tiefpass senken, notfalls Brücke auf
10-30 ms. |
| zerhacktes Signal, Töne brechen auf | Brücke auf 10-30 ms setzen und
Tiefpass senken. Erst wenn das nicht reicht, Automatik aus und die Schwelle von
Hand tiefer legen. |
| Buchstaben zerfallen oder kleben zusammen | Das Clustering hat die
Pausenklassen nicht getrennt bekommen - typisch bei sehr kurzen Aufnahmen oder wenn
es kaum Wortlücken gibt. Steht in der Statuszeile kein
(geclustert), gelten die theoretischen Werte; dann Automatik aus und
Buchstabe bzw. Wort von Hand nachziehen. |
| Plausibilität niedrig, Text aber lesbar | Meist Sendepausen oder ein
zweiter Sender im Durchlassbereich. Bandbreite verschmälern. |
| Müllzeichen zwischen den Sendungen (live) | Rauschsperre erhöhen. Bleibt
es dabei, ist meist Sprache oder ein zweiter Träger dicht daneben - Bandbreite
verschmälern. |
| schwache Station wird gar nicht aufgenommen (live) | Rauschsperre senken,
notfalls auf 0. Prüfen, ob die Signal-Lampe während der Sendung überhaupt
angeht. |
| bereits geschriebener Text ändert sich nachträglich (live) | Kein Fehler,
sondern der Korrekturlauf: er ersetzt den blass dargestellten Bereich durch das
Ergebnis der gründlicheren Datei-Auswertung. Endgültig ist alles bis zu der Zeit, die
in der Statuszeile hinter korrigiert bis steht. |
Morse-Grundlagen und Tabelle
Die Zeitverhältnisse sind vollständig durch das Dit festgelegt:
| Element | Dauer |
| Punkt (Dit) | 1 Dit |
| Strich (Dah) | 3 Dit |
| Pause im Zeichen | 1 Dit |
| Pause zwischen Buchstaben | 3 Dit |
| Pause zwischen Wörtern | 7 Dit |
Die Gebegeschwindigkeit wird üblicherweise in WPM angegeben, bezogen auf das
Normwort PARIS: WPM ≈ 1200 / Dit[ms]. 60 ms Dit entsprechen also
20 WPM, 100 ms rund 12 WPM.
Erkannt werden A-Z, 0-9, die deutschen Zeichen Ä Ö Ü CH sowie
. , ? ! ' / ( ) & : ; = + - _ " $ @. Nicht zuordenbare Folgen
erscheinen als <-.-.--> statt still verworfen zu werden.
Die Zuordnung steht vollständig in morse-code.js, und zwar nur in einer
Richtung: gepflegt wird MORSE_CODE (Zeichen → Code), die Dekodiertabelle
entsteht daraus automatisch. Ein ß ist nicht enthalten - dafür gibt es keinen
standardisierten Code, es wird als SS gegeben.
Vorsicht bei den Umlauten: ---. (Ö) ist eine
----. (9) ohne das letzte Element, ..-- (Ü) eine
..--- (2) ohne das letzte. Geht ein Element verloren, wird aus einer
Ziffer stillschweigend ein Umlaut, statt als unbekannt aufzufallen. Solche Stellen
finden sich nur über die Konfidenzanzeige.
Betriebszeichen
Betriebszeichen (Prosigns) sind zusammengeschriebene Buchstaben ohne Zeichenpause.
Eigene Codes haben nur wenige - die übrigen teilen sich einen Code mit einem
Satzzeichen und sind auf Symbolebene nicht davon zu unterscheiden:
| Code | Ausgabe | im Funkbetrieb |
| ...-.- | <SK> | VA - Ende der Verbindung |
| -.-.- | <KA> | CT - Anfangszeichen |
| ...-. | <VE> | SN - verstanden |
| ........ | <HH> | Irrung, Wort wird wiederholt |
| ...---... | <SOS> | Notzeichen |
| .-.-. | + | zugleich AR - Spruchende |
| -...- | = | zugleich BT - Absatz |
| -.--. | ( | zugleich KN - nur die gerufene Station |
| .-... | & | zugleich AS - warten |
Abkürzungen wie CQ, DX, PSE oder TNX sind keine Betriebszeichen: sie werden als
normale Buchstaben mit normalen Buchstabenlücken gegeben und erscheinen deshalb
von selbst im Text.
Datenschutz
- Keine Datenübertragung, keine Analyse-Werkzeuge, keine Cookies.
- Audio, Aufnahmen und dekodierter Text bleiben im Arbeitsspeicher des Browsers und werden beim Schließen des Tabs verworfen.
- Auch Datei-Auswertung und nachlaufende Korrektur rechnen lokal: die Web Worker laufen im selben Browser, es geht nichts über das Netz.
- Der Mikrofonzugriff wird erst mit Start angefordert und mit Stopp vollständig wieder freigegeben.
- Es werden keine Einstellungen gespeichert - nach dem Neuladen stehen alle Regler wieder auf den Vorgabewerten.