253 lines
13 KiB
JavaScript
253 lines
13 KiB
JavaScript
export default {
|
|
ok: 'Ok',
|
|
cancel: 'Abbrechen',
|
|
socketConnected: 'Message-Stream verbunden',
|
|
socketDisconnected: 'Message-Stream nicht verbunden',
|
|
alert: {
|
|
wrongLogin: 'Falsche Anmeldedaten!',
|
|
},
|
|
button: {
|
|
login: 'Anmelden',
|
|
home: 'Start',
|
|
player: 'Wiedergabe',
|
|
media: 'Medien',
|
|
message: 'Nachrichten',
|
|
logging: 'Protokollierung',
|
|
channels: 'Kanäle',
|
|
configure: 'Einstellungen',
|
|
logout: 'Abmelden',
|
|
},
|
|
error: {
|
|
notFound: 'Seite nicht gefunden',
|
|
serverError: 'Interner Server Fehler',
|
|
},
|
|
input: {
|
|
username: 'Benutzername',
|
|
password: 'Passwort',
|
|
},
|
|
system: {
|
|
cpu: 'CPU',
|
|
cores: 'Kerne',
|
|
load: 'Auslastung',
|
|
memory: 'Arbeitsspeicher',
|
|
swap: 'Auslagerungsspeicher',
|
|
total: 'Gesamt',
|
|
usage: 'Verwendung',
|
|
network: 'Netzwerk',
|
|
in: 'Eingehend',
|
|
out: 'Ausgehend',
|
|
storage: 'Speicher',
|
|
device: 'Gerät',
|
|
size: 'Größe',
|
|
used: 'Genutzt',
|
|
},
|
|
control: {
|
|
noClip: 'Es wird kein Clip abgespielt',
|
|
ingest: 'Live-Übertragung',
|
|
start: 'Playout-Dienst starten',
|
|
last: 'Zum letzten Clip springen',
|
|
stop: 'Playout-Dienst stoppen',
|
|
reset: 'Playout-Zustand zurücksetzen',
|
|
restart: 'Playout-Dienst neu starten',
|
|
next: 'Zum nächsten Clip springen',
|
|
},
|
|
player: {
|
|
start: 'Start',
|
|
file: 'Datei',
|
|
play: 'Abspielen',
|
|
title: 'Titel',
|
|
duration: 'Dauer',
|
|
total: 'Gesamt',
|
|
in: 'Eingang',
|
|
out: 'Ausgang',
|
|
ad: 'Werbung',
|
|
edit: 'Bearbeiten',
|
|
delete: 'Löschen',
|
|
copy: 'Wiedergabeliste kopieren',
|
|
loop: 'Clips in {date} Wiedergabeliste wiederholen',
|
|
remote: 'Externe Quelle zur Wiedergabeliste hinzufügen',
|
|
import: 'Text-/m3u-Datei importieren',
|
|
generate: 'Einfacher und erweiterter Wiedergabelisten-Generator',
|
|
reset: 'Wiedergabeliste zurücksetzen',
|
|
save: 'Wiedergabeliste speichern',
|
|
deletePlaylist: 'Wiedergabeliste löschen',
|
|
unsavedProgram: 'Es existiert Programm das nicht gespeichert ist!',
|
|
copyTo: 'Kopiere aktuelles Programm nach',
|
|
addEdit: 'Quelle hinzufügen/bearbeiten',
|
|
audio: 'Audio',
|
|
customFilter: 'Benutzerdefinierter Filter',
|
|
deleteFrom: 'Programm löschen von',
|
|
deleteSuccess: 'Wiedergabeliste gelöscht...',
|
|
generateProgram: 'Programm generieren',
|
|
simple: 'Einfach',
|
|
advanced: 'Erweitert',
|
|
sorted: 'Sortiert',
|
|
shuffle: 'Zufall',
|
|
shift: 'Zeitverschiebung',
|
|
all: 'Alle',
|
|
addBlock: 'Zeitblock hinzufügen',
|
|
infinitInfo: 'Die Wiedergabe läuft im unendlichen Modus. Es sind keine zeitbasierten Informationen möglich.',
|
|
generateDone: 'Wiedergabeliste generieren erledigt...',
|
|
dateYesterday: 'Aktuelle Uhrzeit liegt vor der Playlist-Startzeit!',
|
|
},
|
|
media: {
|
|
notExists: 'Speicher existiert nicht!',
|
|
create: 'Ordner erstellen',
|
|
upload: 'Dateien hochladen',
|
|
delete: 'Lösche',
|
|
file: 'Datei',
|
|
folder: 'Ordner',
|
|
deleteQuestion: 'Sind Sie sicher, dass Sie löschen möchten',
|
|
preview: 'Vorschau',
|
|
rename: 'Datei umbenennen',
|
|
newFile: 'Neuer Dateiname',
|
|
createFolder: 'Ordner erstellen',
|
|
foldername: 'Ordnername',
|
|
current: 'Aktuell',
|
|
overall: 'Insgesamt',
|
|
uploading: 'Hochladen',
|
|
moveError: 'Fehler beim Verschieben',
|
|
deleteError: 'Löschfehler',
|
|
folderExists: 'Ordner existiert bereits',
|
|
folderCreate: 'Ordner erstellen abgeschlossen...',
|
|
folderError: 'Fehler beim Erstellen des Ordners',
|
|
uploadError: 'Fehler beim Hochladen',
|
|
fileExists: 'Datei existiert bereits!',
|
|
recursive: 'Rekursiv',
|
|
},
|
|
message: {
|
|
savePreset: 'Voreinstellung speichern',
|
|
newPreset: 'Neue Voreinstellung',
|
|
delPreset: 'Voreinstellung löschen',
|
|
delText: 'Sind Sie sicher, dass Sie die Voreinstellung löschen möchten',
|
|
placeholder: 'Nachricht',
|
|
xAxis: 'X-Achse',
|
|
yAxis: 'Y-Achse',
|
|
showBox: 'Box anzeigen',
|
|
boxColor: 'Boxfarbe',
|
|
boxAlpha: 'Box-Transparenz',
|
|
size: 'Größe',
|
|
spacing: 'Abstand',
|
|
overallAlpha: 'Gesamttransparenz',
|
|
fontColor: 'Schriftfarbe',
|
|
fontAlpha: 'Schrifttransparenz',
|
|
borderWidth: 'Rahmenbreite',
|
|
send: 'Senden',
|
|
name: 'Name',
|
|
saveDone: 'Voreinstellung gespeichert!',
|
|
saveFailed: 'Voreinstellung speichern fehlgeschlagen!',
|
|
sendDone: 'Erfolgreich gesendet...',
|
|
sendFailed: 'Senden fehlgeschlagen...',
|
|
},
|
|
log: {
|
|
download: 'Protokoll herunterladen',
|
|
reload: 'Neu laden',
|
|
},
|
|
advanced: {
|
|
title: 'Advanced Configuration',
|
|
decoder: 'Decoder',
|
|
encoder: 'Encoder',
|
|
filter: 'Filter',
|
|
ingest: 'Ingest',
|
|
updateSuccess: 'Update advanced config success!',
|
|
updateFailed: 'Update advanced config failed!',
|
|
warning: 'Warning! These settings are experimental and only intended for advanced users who are familiar with ffmpeg. Only change the settings here if you are sure of what you are doing! The settings can make the system unstable.',
|
|
},
|
|
config: {
|
|
channel: 'Kanal',
|
|
user: 'Benutzer',
|
|
channelConf: 'Kanal-Konfiguration',
|
|
addChannel: 'Neuen Kanal hinzufügen',
|
|
name: 'Name',
|
|
previewUrl: 'Vorschau-URL',
|
|
extensions: 'Zusätzliche Erweiterungen',
|
|
save: 'Speichern',
|
|
delete: 'Löschen',
|
|
updateChannelSuccess: 'Kanal-Konfiguration erfolgreich aktualisiert!',
|
|
updateChannelFailed: 'Fehler beim Aktualisieren der Kanal-Konfiguration!',
|
|
errorChannelDelete: 'Der erste Kanal kann nicht gelöscht werden!',
|
|
deleteChannelSuccess: 'Kanal-Konfiguration erfolgreich gelöscht!',
|
|
deleteChannelFailed: 'Fehler beim Löschen der Kanal-Konfiguration!',
|
|
playoutConf: 'Playout-Konfiguration',
|
|
general: 'Allgemein',
|
|
rpcServer: 'RPC Server',
|
|
mail: 'EMail',
|
|
logging: 'Protokollierung',
|
|
processing: 'Verarbeitung',
|
|
ingest: 'Live-Eingang',
|
|
playlist: 'Wiedergabeliste',
|
|
storage: 'Speicher',
|
|
text: 'Text',
|
|
task: 'Aufgabe',
|
|
output: 'Ausgabe',
|
|
placeholderPass: 'Passwort',
|
|
help: 'Hilfe',
|
|
generalHelp: 'Manchmal kann es passieren, dass eine Datei beschädigt ist, aber dennoch abgespielt werden kann. Dies kann zu einem Streaming-Fehler für alle folgenden Dateien führen. Die einzige Lösung in diesem Fall ist, ffplayout zu stoppen und erneut zu starten.',
|
|
stopThreshold: 'Der Schwellenwert stoppt ffplayout, wenn es zeitlich asynchron über diesem Wert ist. Eine Zahl unter 3 kann unerwartete Fehler verursachen.',
|
|
mailHelp: `Sende Fehlermeldungen an eine E-Mail-Adresse, wie z.B. fehlende Clips, fehlendes oder ungültiges Playlist-Format usw. Lass den Empfänger leer, wenn du dies nicht benötigst.`,
|
|
mailInterval: 'Das Intervall bezieht sich auf die Anzahl der Sekunden, bis eine neue E-Mail gesendet wird; der Wert muss in 10er-Schritten und nicht unter 30 Sekunden liegen.',
|
|
logHelp: 'Passen Sie das Verhalten des Loggings an.',
|
|
logDetect: 'Protokolliert eine Fehlermeldung, wenn die Audioleitung während des Validierungsprozesses 15 Sekunden lang stumm ist.',
|
|
logIgnore: 'Ignoriere Zeichenfolgen, die übereinstimmende Zeilen enthalten; das Format ist eine durch Semikolon getrennte Liste.',
|
|
processingHelp: 'Die Standardverarbeitung für alle Clips stellt die Einzigartigkeit sicher.',
|
|
processingLogoPath: 'Das Logo wird nur verwendet, wenn der Pfad existiert; der Pfad ist relativ zum Speicherordner.',
|
|
processingLogoScale: `Lass die Skalierung des Logos leer, wenn keine Skalierung erforderlich ist. Das Format lautet 'Breite:Höhe', zum Beispiel: '100:-1' für proportionale Skalierung.`,
|
|
processingLogoPosition: `Die Position wird im Format 'x:y' angegeben.`,
|
|
processingAudioTracks: 'Gib an, wie viele Audiospuren verarbeitet werden sollen.',
|
|
processingAudioIndex: 'Welche Audiospur verwendet werden soll, -1 für alle.',
|
|
processingAudioChannels: 'Stelle die Anzahl der Audiokanäle ein, wenn das Audio mehr Kanäle als Stereo hat.',
|
|
processingCustomFilter: 'Füge benutzerdefinierte Filter zur Verarbeitung hinzu. Die Filterausgaben müssen mit [c_v_out] für Video-Filter und [c_a_out] für Audio-Filter enden.',
|
|
processingVTTEnable: 'VTT kann nur im HLS-Modus verwendet werden und nur, wenn *.vtt-Dateien mit demselben Namen wie die Videodatei vorhanden sind.',
|
|
processingVTTDummy: 'Ein Platzhalter wird benötigt, wenn keine vtt-Datei vorhanden ist.',
|
|
ingestHelp: `Starte einen Server für einen Ingest-Stream. Dieser Stream wird den normalen Stream überschreiben, bis er beendet ist. Es gibt nur einen sehr einfachen Authentifizierungsmechanismus, der überprüft, ob der Streamname korrekt ist.`,
|
|
ingestCustomFilter: 'Wende einen benutzerdefinierten Filter auf den Ingest-Stream auf dieselbe Weise wie im Abschnitt Verarbeitung an.',
|
|
playlistHelp: 'Playlist-Verwaltung.',
|
|
playlistDayStart: 'Zu welcher Zeit die Playlist starten soll; lasse es leer, wenn die Playlist immer von Anfang an starten soll.',
|
|
playlistLength: 'Ziel-Länge der Playlist; wenn es leer ist, wird die reale Länge nicht berücksichtigt.',
|
|
playlistInfinit: 'Eine einzelne Playlist-Datei endlos wiederholen.',
|
|
storageHelp: 'Speichereinstellungen, die Standorte sind relativ zum Kanal-Speicher.',
|
|
storageFiller: 'Verwenden Sie einen Platzhalter, um eine fehlende Datei abzuspielen oder um die verbleibende Zeit auf insgesamt 24 Stunden zu füllen. Es kann sich um eine Datei oder einen Ordner mit relativem Pfad handeln, der bei Bedarf wiederholt wird.',
|
|
storageExtension: 'Gib an, welche Dateien gesucht und verwendet werden sollen.',
|
|
storageShuffle: 'Wähle Dateien zufällig aus (im Ordner-Modus und bei der Playlist-Erstellung).',
|
|
textHelp: 'Texteinblendung in Kombination mit libzmq für die Fernmanipulation von Text.',
|
|
textFont: 'Relativer Pfad zum Kanal-Speicher.',
|
|
textFromFile: 'Extrahiere Text aus einem Dateinamen.',
|
|
textStyle: 'Definiere die Parameter für drawtext, wie Position, Farbe usw. Das Posten von Text über die API überschreibt dies.',
|
|
textRegex: 'Formatiere Dateinamen, um einen Titel daraus zu extrahieren.',
|
|
taskHelp: 'Führe ein externes Programm mit einem gegebenen Medienobjekt aus. Das Medienobjekt ist im JSON-Format und enthält alle Informationen über den aktuellen Clip. Das externe Programm kann ein Skript oder eine Binärdatei sein, sollte aber nur für kurze Zeit laufen.',
|
|
taskPath: 'Pfad zur ausführbaren Datei.',
|
|
outputHelp: `Die endgültige Playout-Codierung, passe die Einstellungen nach deinen Bedürfnissen an. Verwende den 'stream'-Modus und passe den 'Ausgabe-Parameter' an, wenn du zu einem RTMP/RTSP/SRT/...-Server streamen möchtest. Im Produktionsbetrieb verwende kein HLS mit ffplayout; nutze Nginx oder einen anderen Webserver!`,
|
|
outputParam: 'HLS-Segment- und Playlist-Pfade sind relativ.',
|
|
restartTile: 'Playout neustarten',
|
|
restartText: 'ffplayout neustarten um Einstellungen anzuwenden?',
|
|
updatePlayoutSuccess: 'Update der Playout-Konfiguration erfolgreich!',
|
|
updatePlayoutFailed: 'Update playout config fehlgeschlagen!',
|
|
forbiddenPlaylistPath: 'Zugriff untersagt: Playlist-Ordner kann nicht geöffnet werden.',
|
|
noPlayoutConfig: 'Keine Playout-Konfiguration gefunden!',
|
|
publicPath: 'Public (HLS) Pfad',
|
|
playlistPath: 'Wiedergabelistenpfad',
|
|
storagePath: 'Speicherpfad',
|
|
sharedStorage: 'ffplayout läuft innerhalb eines Containers, verwenden Sie den gleichen Speicherstamm für alle Kanäle!',
|
|
},
|
|
user: {
|
|
title: 'Benutzer-Konfiguration',
|
|
add: 'Benutzer hinzufügen',
|
|
delete: 'Löschen',
|
|
name: 'Benutzername',
|
|
mail: 'E-Mail',
|
|
password: 'Passwort',
|
|
newPass: 'Neues Passwort',
|
|
confirmPass: 'Passwort bestätigen',
|
|
save: 'Speichern',
|
|
admin: 'Administrator',
|
|
deleteNotPossible: 'Löschen des aktuellen Benutzers nicht möglich!',
|
|
deleteSuccess: 'Benutzer erfolgreich gelöscht!',
|
|
deleteError: 'Fehler beim Löschen des Benutzers',
|
|
addSuccess: 'Benutzer erfolgreich hinzugefügt!',
|
|
addFailed: 'Fehler beim Hinzufügen des Benutzers!',
|
|
mismatch: 'Passwort stimmt nicht überein!',
|
|
updateSuccess: 'Benutzerprofil erfolgreich aktualisiert!',
|
|
updateFailed: 'Fehler beim Aktualisieren des Benutzerprofils!',
|
|
},
|
|
}
|