ubuntuusers.de

Transkriptionsprogramme

Als Transkription bezeichnet man in den (Geistes-)Wissenschaften u.a. die wörtliche Übertragung eines aufgenommenen Gesprächs in Schrift. Dies wird vor allem in den Sozialwissenschaften oft angewendet, um aufgenommene Interviews gründlich auswerten zu können.

Ein Transkriptionsprogramm erleichtert diese Aufgabe, indem es einen Audio- / Videoplayer und einen Texteditor in einem Programm kombiniert und idealerweise eine erweiterte Kontrolle beim Abspielen (Tastenkürzel für Abspielgeschwindigkeit, Rücklauf usw.) sowie Zusatzfunktionen beim Erstellen der Textdatei (automatisches Einfügen von Zeitstempeln, Kennzeichnung unterschiedlicher Sprecher, etc.) ermöglicht. Die dadurch gegenüber traditionellen Methoden mögliche Zeitersparnis kann beachtlich sein.

Neuerlich tauchen auch Möglichkeiten auf, Tonaufzeichnungen automatisch zu transskribieren.

Programme

easytranscript

easytranscript 🇩🇪 ist ein unter der GPL 3.0-Lizenz veröffentlichtes, plattformübergreifendes Transkriptionsprogramm von e-werkzeug, welches in Java geschrieben ist. Es orientiert sich vom Konzept her an den alten Versionen der proprietären Software f4transkript (siehe unten) und vereint in einem Fenster sowohl den Transkriptionstext als auch die Medienwiedergabe (Audio oder Video - die Wiedergabe erfolgt über VLC). Fußschalter werden unterstützt, die Tastenbefehle zum Abspielen der Mediendatei können angepasst werden und auf Wunsch ist auch eine Arbeitszeiterfassung möglich. Zudem werden - wie auch bei F4 - automatische Zeitmarken und Sprecherwechsel unterstützt und es können über Tastenkombinationen Textbausteine (zum Beispiel für Pausen) eingefügt werden. Ein sogenannter Stenographiemodus ermöglicht es, dass auf Wunsch bestimmte Kürzel ersetzt werden (et wird zu easytranscript). Installationshinweise sind auf der Webseite zu finden. 🇩🇪

Parlatype

Parlatype 🇬🇧 ist ein kompaktes Transkriptionsprogramm, das ab Ubuntu 18.04 in den Paketquellen verfügbar ist (PPA für vorherige Versionen). Es lässt sich über die Medientasten im Hintergrund steuern, hat eine konfigurierbare Zurückspringfunktion, Geschwindigkeitseinstellungen, eine graphische Anzeige der Audiowellen und es gibt integrierte Makros für LibreOffice, was das Transkribieren erleichtert. Via Kopieren kann der aktuelle Zeitstempel als Text kopiert werden.

./openscribe_logo.png

OpenScribe

Zu OpenScribe 🇬🇧 liegen nur wenige Informationen vor. Über die Projektseite wird eine Fremdquelle (PPA 🇬🇧) und Fremdpakete für die LTS-Versionen von Ubuntu angeboten. Auch ein Fußschalter wird unterstützt.

ELAN

ELAN 🇬🇧 ist ebenfalls ein Programm, zu dem noch wenig Informationen vorliegen. Als Voraussetzung dient Java. Mehr Informationen sind dem Handbuch 🇬🇧 und dem User Guide 🇬🇧 zu entnehmen.

EXMARaLDA

EXMARaLDA 🇩🇪 ist ein sprachwissenschaftliches Transkriptionspaket aus mehreren Komponenten, das durch weitere Werkzeuge ergänzt und für eine Vielzahl von Sprachen verwendet werden kann. Das Programm ist plattformunabhängig in Java geschrieben. Die Entwicklung wird u.a. von der Deutschen Forschungsgesellschaft, der Universität Hamburg und dem Bundesministerium für Bildung und Forschung getragen. Das Programm steht auf der Homepage als .tar.gz-Archiv oder via GitHub im Quellcode zum Download bereit. Einige Beispiele 🇩🇪 können einfach im Browser getestet werden.

PlayItSlowly

PlayItSlowly ist ein kleines Python-Programm, mit dem Aufnahmen in anderen Tempi abgespielt werden können. Dabei kann die Tonhöhe gehalten oder auch verändert werden; ebenso lässt sich ein Ausschnitt aus der Aufnahme wiedergeben. Insgesamt gesehen mehr für eine angepasste Musikwiedergabe als für Transkriptionen konzipiert.

f4transkipt

f4transkript 🇩🇪 ist ein in C++ geschriebenes kommerzielles Programm. Es ist für Windows, Linux und Mac OS X verfügbar. Im Unterbau verwendet es den VLC zum Abspielen von Audiodateien und FFmpeg zum Generien der Waveform Ansicht. Ohne Serienummer oder Patch ist werden nur die ersten 5 Minuten einer Audiodatei wiedergeben.

VLC und Textverarbeitung

Eine Alternative kann die Verwendung von VLC sein, da für dieses Programm globale Hotkeys ("Extras → Einstellungen → Hotkeys") definiert werden können, die eine Steuerung im Hintergrund erlauben. So kann in einem Textverarbeitungsprogramm wie z.B. LibreOffice geschrieben und ohne Fensterwechsel die Audiodatei in VLC pausiert werden. Ein automatisches Zurückspringen um ein paar Sekunden ist jedoch nicht möglich. Sollte die Belegung der Hotkeys nicht gleich funktionieren, hilft ggf. ein Neustart des VLC-Players.

Audacious und LibreOffice-Makro

Eine weitere Alternative ist die Nutzung des Audioplayers Audacious zusammen mit einem LibreOffice-Makro. Damit ist eine Audiosteuerung über F-Tasten, verlangsamtes Abspielen und automatisches Einfügen von Zeitstempeln möglich.

Audiosteuerung über F-Tasten

Zu Audacious gehört das Kommandozeilenwerkzeug audtool, mit dem es möglich ist, das Verhalten von Audacious sehr fein zu steuern. Über GNOME Tastenkürzel ist es möglich, die F-Tasten für die Transkription zu belegen:

Befehle für audtool
Taste Befehl Effekt
F9 audtool playback-seek-relative -3 3 Sekunden zurückspringen
F10 audtool playback-seek-relative -1 playback-pause 1 Sekunde zurückspringen und pausieren/starten
F11 audtool playback-seek-relative +3 3 Sekunden vorspringen

Tipp: Fußschalter, die vom System als Tastatur erkannt werden, können auf diesem Weg entsprechend konfiguriert werden. Es ist aber auch möglich, einfach eine zweite Tastatur an den PC anzuschließen und als günstigen Ersatz für einen Fußschalter auf den Boden zu legen.

Wiedergabe verlangsamen

Im Paket audacious-plugins findet sich das Plugin "SndStretch", dass sich in Audacious über Einstellungen → Plugins → Effekte aktivieren lässt. Damit ist es möglich, die Wiedergabe zu verlangsamen, ohne die Tonhöhe zu erhöhen.

Zeitstempel automatisch in LibreOffice-Writer einfügen

Mittels eines kleinen LibreOffice-Makros ist es möglich, über audtool den aktuellen Zeitstempel von Audacious auszulesen und ins Writer-Dokument einzufügen:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
sub GetAudaciousTime

' timestamp in temporäre Datei schreiben
shellcmd = "/bin/bash -c 'audtool current-song-output-length > /tmp/aud-current-song-output-length'"
shell ( shellcmd )
wait( 40 ) 

' temporäre Datei auslesen
Dim f1 As Integer
Dim audacioustimestampfile As String
Dim audacioustimestamp As String
f1=freefile()
audacioustimestampfile="/tmp/aud-current-song-output-length"
Open audacioustimestampfile For Input As #f1
Line Input #f1, audacioustimestamp
Close #f1

' Ergebnis formatieren
seconds = right(audacioustimestamp, 2)
minutes = left (audacioustimestamp, len(audacioustimestamp)-3)
if ( minutes>60 ) then 
	hours = cint( minutes )\60
	minutes = cint( minutes ) MOD 60 
else hours=0
end if
MyFormat = "00"
minutes = Format( minutes, MyFormat ) 
hours = Format( hours, MyFormat )
audacioustimestamp = chr(13) + "#" + hours + ":" + minutes + ":" + seconds + "# "

' ins Dokument schreiben
oDoc=thisComponent
oViewCursor=odoc.GetCurrentController.ViewCursor
oText=oDoc.text
oText.insertString(oViewCursor, audacioustimestamp,false)

end sub

Dieses Makro lässt sich in LibreOffice über "Extras → Anpassen → Tastatur" z.B. auf die Tastenkombination Alt + legen.

Youtube (automatisch)

Youtube transskribiert hochgeladene Videos automatisch. Wie lange es dauert, hängt im wesentlichen von der Filmlänge und der Klickzahl ab. Einsehen kann man es über die Funktion "Transskript Öffnen" im "..."-Menü. Herauskopieren lässt sich das Transskript mittels Strg+A und Strg+C. Clips mit 1...5 Min. Länge sind erfahrungsgemäß nach einem Tag transskribiert. Längere Filme kann man in viele Schnipsel zerstückeln und getrennt verarbeiten lassen, um die Wartezeit zu verkürzen. Um die Dateien erheblich zu verkleinern, kann man die Original-Videospur durch ein Standbild oder ähnliches ersetzen. Ein Verlangsamen des Films und die Veränderung der Tonhöhe kann die Erkennungsqualität erhöhen. Beispiel für Verlangsamung um 1,3 und Tonerhöhung um 1,1:

ffmpeg -i IN.mp4 -af atempo=1/1.1/1.3,aresample=48000/1.1,asetrate=48000 OUT_1.3x.mp3 # Audio extrahieren
ffmpeg -i OUT_1.3x.mp3 -f lavfi -i life=s=320x240:mold=10:r=30:ratio=0.1:death_color=#C83232:life_color=#00ff00 -vf format=yuv420p -crf 39 -shortest -movflags +faststart VOICES_1.3x.mp4 # Animation einfügen
ffmpeg -ss 00:00:00 -t 00:03:10 -i VOICES_1.3x.mp4 -c copy -movflags +faststart VOICES_1.3x_00-00-00.mp4 # Schnipsel erstellen
ffmpeg -ss 00:04:30 -t 00:01:00 -i VOICES_1.3x.mp4 -c copy -movflags +faststart VOICES_1.3x_00-04-30.mp4 # div. Passagen auslassen
[.....] 

webkitSpeechRecognition Engine / Google Docs

Wenn man aus welchen Gründen auch immer kein Video auf Youtube hochladen kann oder möchte, kann die im Browser verhandene webkit SpeechRecognition Engine nutzen. Das funktioniert auf allen auf webKit basierenden Browsern wie Google Chrome, Chromium, Opera, Safari... Der Firefox, welcher mit der alternativen Gecko Engine arbeitet kann aber leider keine Spracherkennung. Für Puristen hier Google's webkitSpeechRecognition API Demo Code lässt sich sehr gut zum Transkribieren einsetzen: https://google.com/intl/en/chrome/demos/speech.html

Je nach Verwendungszweck kann: https://translate.google.com oder https://docs.google.com praktisch sein. Um mit anderen zusammenzuarbeiten und den transkribierten Text schon während der Bearbeitung per Freigabelink zu teilen ist Google Docs eine gute Wahl. In Google Docs wählt unter Tools → Transkript (oder per strg+shift+s) automatisch ein Mikrofon aus. Die Aufnahme vorher zu verlangsamen (siehe oben unter Youtube) kann auch hier von Vorteil sein. Man kann die Tonaufnahme mittels Mediaplayer über Lautsprecher abspielen und das interne Mikrophon wieder aufnehmen, doch das Ergebnis ist dann sehr bescheiden. Doch mit Google Docs gib es ein kleines Problem. Leider stoppt die Aufnahme sobald man ausserhalb des Google Docs Fensters klickt. Zusammen mit der Tatsache, dass sich bei jedem neuen Zugriff im Mixer die Aufnahmequelle von 'Monitor' auf Mikrophon zurückstellt verkompliziert leider die Verwendung. Versucht man den Chromium-Eingabe-Stream mittels pavucontrol direkt auf den Mediaplayer umzuleiten, wird die Spracheingabe sofort abgebrochen.

Mit folgendem Vorgehen wird versucht dieses Umschalten der Aufnahmequelle zu Automatisieren: https://forum.ubuntuusers.de/post/9158546/

Ein anderer Ansatz ist den Chromium Process kurz anzuhalten. Im 'Pausemodus' die gewünschten 2 Klicks zu tätigen. Also Spracheingabe starten und Fenster verlassen. Und ihn dann weiterlaufen zu lassen. Die Klicks werden dann beim Fortsetzen des Chromium Process so schnell ausgeführt, dass ein Verlassen des Fenster gelingt auch ohne dass die Spracheingabe stoppt.

Hier die Kommandozeilenversion Vorher:

  • pavucontrol Lautstärkeregler/Aufnahme

  • in Google Docs mit strg+shift+s das Mirkophonfenster für die Spracheingabe öffnen

  • Player mit der Audiodatei öffnen

0. Einen Terminal öffnen ( u.U. Gelingt das mit Strg+Alt+t ) 1. die PID vom 'oberster' chromium Process ermitteln

1
ps -C chromium|head -n2

Ausgabe sieht so aus:

    PID TTY          TIME CMD
2504201 ?        00:40:21 chromium

2. Den Code unten anpassen und zweimal die '2504201' mit der PID die bei Euch steht ersetzen

1
kill -STOP 2504201 && sleep 5 &&echo ... und Weitergehts.&& kill -cont 2504201

Nach dem Starten

  • In Chromium einen Klick auf das Mikrophon Fensterchen

  • ... und danach auf die Lautstärkeregler oder woanders außerhalb klicken!

→ nach 5 Sekunden wird Chromium fortgesetzt. 3. Jetzt könnt ihr in 'Lautstärkeregler/Aufnahme' die Aufnahmequelle umstellen und 4. Im Mediaplayer mit der Sprachdatei auf Play drücken. Auch hier nicht zu viel Zeit lassen damit die Spracheingabe nicht wegen 10 Sekunden Stille abschaltet

Verbesserungen können hier diskutiert werden.

Ein alternativer Weg könnte evtl. auch mittels

pacmd set-default-source SOURCE 

funktionieren. Dabei müsste dann in Google Docs nach Aktivieren des Transkript-Tools mittels Klicken auf das Kamera-Symbol in der Browser-Adresszeile das Mikrofon "Standardeinstellung" ausgewählt werden.

Ein mit Google Docs erstelltes Transkript ist nicht so hochwertig, wie ein mit Youtube erstelltes. Das liegt vermutlich daran, dass dies auf Youtube asynchron verarbeitet wird, und so mehr CPU-Zeit zur Verfügung steht. Auch fehlen im Google Docs Transkript die Zeitstempel.

Diese Revision wurde am 28. April 2021 22:37 von Heinrich_Schwietering erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Büro, Bildung, Wissenschaft, Übersicht