# German po for gst-plugins-bad 1.4.1
# Copyright (C) 2007 Free Software Foundation, Inc.
# This file is distributed under the same license as the gst-plugins-bad package.
# Andre Klapper <ak-47@gmx.net>, 2008.
# Christian Kirbach <christian.kirbach@googlemail.com>, 2009, 2011, 2013.
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-bad 1.6.0\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2015-10-30 14:30+0200\n"
"PO-Revision-Date: 2015-10-21 00:15+0200\n"
"Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.5\n"

msgid "format wasn't negotiated before get function"
msgstr "das Format wurde vor der get-Funktion nicht ausgehandelt"

msgid "default GStreamer sound events audiosink"
msgstr "Voreingestellte GStreamer Tonereignis-Audioziel"

msgid ""
"GStreamer can play audio using any number of output elements. Some possible "
"choices are osssink, pulsesink and alsasink. The audiosink can be a partial "
"pipeline instead of just one element."
msgstr ""
"GStreamer kann Ton mit einer beliebigen Anzahl an Ausgabeelementen "
"wiedergeben. Einige Wahlmöglichkeiten sind »osssink«, »pulsesink« und "
"»alsasink«. Das Audioziel kann eine teilweise Weiterleitung anstelle nur "
"eines einzigen Elements sein."

msgid "description for default GStreamer sound events audiosink"
msgstr "Beschreibung des voreingestellten GStreamer Tonereignis-Audioziel"

msgid "Describes the selected audiosink element."
msgstr "Beschreibt das gewählte Audioziel-Element."

msgid "default GStreamer audiosink for Audio/Video Conferencing"
msgstr "Voreingestelltes GStreamer-Audioziel für Ton- und Videokonferenzen"

msgid ""
"description for default GStreamer audiosink for Audio/Video Conferencing"
msgstr ""
"Beschreibung des voreingestellten GStreamer-Audioziel für Ton- und "
"Videokonferenzen"

msgid "default GStreamer audiosink for Music and Movies"
msgstr "Voreingestelltes GStreamer-Audioziel für Musik und Filme"

msgid "description for default GStreamer audiosink for Music and Movies"
msgstr ""
"Beschreibung des voreingestellten GStreamer-Audioziel für Musik und Filme"

msgid "default GStreamer videosink"
msgstr "Voreingestelltes GStreamer-Videoziel"

msgid ""
"GStreamer can play video using any number of output elements. Some possible "
"choices are xvimagesink, ximagesink, sdlvideosink and aasink. The videosink "
"can be a partial pipeline instead of just one element."
msgstr ""
"GStreamer kann Video mit einer beliebigen Anzahl an Ausgabeelementen "
"wiedergeben. Einige Wahlmöglichkeiten sind »xvimagesink«, »ximagesink«, "
"»sdlvideosink« und »aasink«. Das Videoziel kann eine anteilige Weiterleitung "
"anstelle eines einzigen Elements sein."

msgid "description for default GStreamer videosink"
msgstr "Beschreibung des voreingestellten GStreamer-Videoziel"

msgid "Describes the selected videosink element."
msgstr "Beschreibt das gewählte Videoziel-Element."

msgid "default GStreamer audiosrc"
msgstr "Voreingestelltes GStreamer-audiosrc"

msgid ""
"GStreamer can record audio using any number of input elements. Some possible "
"choices are osssrc, pulsesrc and alsasrc. The audio source can be a partial "
"pipeline instead of just one element."
msgstr ""
"GStreamer kann Ton mit einer beliebigen Anzahl an Eingabeelementen "
"aufzeichnen. Einige Wahlmöglichkeiten sind »osssrc«, »pulsesrc« und "
"»alsasrc«. Die Audioquelle kann eine anteilige Weiterleitung anstelle eines "
"einzigen Elements sein."

msgid "description for default GStreamer audiosrc"
msgstr "Beschreibung des voreingestellten GStreamer-audiosrc"

msgid "Describes the selected audiosrc element."
msgstr "Beschreibt das gewählte audiosrc-Element."

msgid "default GStreamer videosrc"
msgstr "Voreingestelltes GStreamer-videosrc"

msgid ""
"GStreamer can record video from any number of input elements. Some possible "
"choices are v4lsrc, v4l2src and videotestsrc. The video source can be a "
"partial pipeline instead of just one element."
msgstr ""
"GStreamer kann Video mit einer beliebigen Anzahl an Eingabeelementen "
"aufzeichnen. Einige Wahlmöglichkeiten sind »v4lsrc«, »v4l2src« und "
"»videotestsrc«. Die Videoquelle kann eine anteilige Weiterleitung anstelle "
"eines einzigen Elements sein."

msgid "description for default GStreamer videosrc"
msgstr "Beschreibung des voreingestellten GStreamer-videosrc"

msgid "Describes the selected videosrc element."
msgstr "Beschreibt das gewählte videosrc-Element."

msgid "default GStreamer visualization"
msgstr "Voreingestellte GStreamer-Visualisierung"

msgid ""
"GStreamer can put visualization plugins in a pipeline to transform audio "
"streams in video frames. Some possible choices are goom, goom2k1 and "
"synaesthesia. The visualization plugin can be a partial pipeline instead of "
"just one element."
msgstr ""
"GStreamer kann Visualisierungs-Plugins in eine Weiterleitung integrieren, um "
"Audioströme in Videobilder umzuwandeln. Einige Wahlmöglichkeiten sind "
"»goom«, »goom2k1« und »synaesthesia«. Das Visualisierungs-Plugin kann eine "
"anteilige Weiterleitung anstelle eines einzigen Elements sein."

msgid "description for default GStreamer visualization"
msgstr "Beschreibung der voreingestellten GStreamer-Visualisierung"

msgid "Describes the selected visualization element."
msgstr "Beschreibt das gewählte Visualisierungselement."

# OpenCV ist eine freie Programmbibliothek mit Algorithmen für die Bildverarbeitung und maschinelles Sehen.
msgid "OpenCV failed to load template image"
msgstr "OpenCV konnte nicht die Bildvorlage laden"

msgid "Could not read title information for DVD."
msgstr "Die Titelinformationen der DVD konnten nicht gelesen werden."

#, c-format
msgid "Failed to open DVD device '%s'."
msgstr "Öffnen des DVD-Geräts »%s« schlug fehl."

msgid "Failed to set PGC based seeking."
msgstr "PGC-basiertes Suchen schlug fehl."

msgid ""
"Could not read DVD. This may be because the DVD is encrypted and a DVD "
"decryption library is not installed."
msgstr ""
"DVD konnten nicht gelesen werden. Dies könnte daran liegen, dass die DVD "
"verschlüsselt ist und eine Bibliothek zur DVD-Entschlüsselung nicht "
"installiert ist."

msgid "Could not read DVD."
msgstr "DVD konnten nicht gelesen werden."

msgid "This file contains no playable streams."
msgstr "Diese Datei enthält keine abspielbaren Ströme."

msgid "Could not open sndfile stream for reading."
msgstr "sndfile-Datenstrom konnte nicht zum Lesen geöffnet werden."

msgid "Could not establish connection to sndio"
msgstr "Es konnte keine Verbindung zu sndio hergestellt werden"

msgid "Failed to query sndio capabilities"
msgstr "Abfragen der sndio-Fähigkeiten schlug fehl"

msgid "Could not configure sndio"
msgstr "sndio konnte nicht eingestellt werden"

msgid "Could not start sndio"
msgstr "sndio konnten nicht gestartet werden"

msgid "Internal data flow error."
msgstr "Interner Datenstromfehler."

msgid "Generated file has a larger preroll time than its streams duration"
msgstr ""
"Die erzeugte Datei hat eine größere Vorlaufzeit als die Dauer ihres "
"Datenstroms"

#, c-format
msgid "Missing element '%s' - check your GStreamer installation."
msgstr ""
"Das Element »%s« fehlt - überprüfen Sie Ihre Installation von GStreamer."

msgid "File location is set to NULL, please set it to a valid filename"
msgstr ""
"Dateiort ist als NULL festgelegt. Bitte legen Sie einen gültigen Dateinamen "
"fest"

msgid "Digitalzoom element couldn't be created"
msgstr "Element für Digitalzoom konnte nicht angelegt werden"

msgid "Subpicture format was not configured before data flow"
msgstr "Format des Unterbilds wurde nicht vor dem Datenfluss konfiguriert"

msgid "Failed to get fragment URL."
msgstr "Ermitteln der Fragment-Adresse schlug fehl."

msgid "Internal data stream error."
msgstr "Interner Datenstromfehler."

msgid "Couldn't download fragments"
msgstr "Fragmente konnten nicht heruntergeladen werden"

msgid "No file name specified for writing."
msgstr "Kein Dateiname zum Schreiben angegeben."

#, c-format
msgid "Given file name \"%s\" can't be converted to local file name encoding."
msgstr ""
"Der gegebene Dateiname »%s« kann nicht in lokale Dateinamen-Kodierung "
"umgewandelt werden."

#, c-format
msgid "Could not open file \"%s\" for writing."
msgstr "Datei »%s« konnte nicht zum Schreiben geöffnet werden."

#, c-format
msgid "Device \"%s\" does not exist."
msgstr "Gerät »%s« existiert nicht."

#, c-format
msgid "Could not open frontend device \"%s\"."
msgstr "Frontend-Gerät »%s« konnte nicht geöffnet werden."

#, c-format
msgid "Could not get settings from frontend device \"%s\"."
msgstr ""
"Einstellungen des Frontend-Geräts »%s« konnten nicht aufgerufen werden."

#, c-format
msgid "Cannot enumerate delivery systems from frontend device \"%s\"."
msgstr ""
"Ausliefersystem des Frontend-Geräts »%s« kann nicht durchgezählt werden."

#, c-format
msgid "Could not open file \"%s\" for reading."
msgstr "Datei »%s« konnte nicht zum Lesen geöffnet werden."

msgid "Couldn't find DVB channel configuration file"
msgstr "DVB Kanal-Konfigurationsdatei konnte nicht gefunden werden"

#, c-format
msgid "Couldn't load DVB channel configuration file: %s"
msgstr "DVB Kanal-Konfigurationsdatei konnte nicht geladen werden: %s"

msgid "DVB channel configuration file doesn't contain any channels"
msgstr "DVB Kanal-Konfigurationsdatei enthält keine Kanäle"

#, c-format
msgid "Couldn't find details for DVB channel %s"
msgstr "Details zu DVB-Kanal %s konnten nicht gefunden werden"

#~ msgid "Couldn't get the Manifest's URI"
#~ msgstr "Adresse der Frachtliste konnte nicht ermittelt werden"

#~ msgid "Could not write to file \"%s\"."
#~ msgstr "Es konnte nicht in Datei »%s« geschrieben werden."

#~ msgid "Internal clock error."
#~ msgstr "Interner Zeitfehler."

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr "Audio-Gerät konnte nicht zum Regeln geöffnet werden."

#~ msgid ""
#~ "Could not open audio device for mixer control handling. This version of "
#~ "the Open Sound System is not supported by this element."
#~ msgstr ""
#~ "Audio-Gerät konnte nicht zum Regeln geöffnet werden. Diese Version des "
#~ "Open Sound System (OSS) wird nicht von diesem Element unterstützt."

#~ msgid "Volume"
#~ msgstr "Lautstärke"

#~ msgid "Master"
#~ msgstr "Hauptregler"

#~ msgid "Front"
#~ msgstr "Vorne"

#~ msgid "Rear"
#~ msgstr "Hinten"

#~ msgid "Headphones"
#~ msgstr "Kopfhörer"

#~ msgid "Center"
#~ msgstr "Mitte"

#~ msgid "LFE"
#~ msgstr "LFE"

#~ msgid "Surround"
#~ msgstr "Surround"

#~ msgid "Side"
#~ msgstr "Seite"

#~ msgid "Built-in Speaker"
#~ msgstr "Eingebauter Lautsprecher"

#~ msgid "AUX 1 Out"
#~ msgstr "AUX-Ausgang 1"

#~ msgid "AUX 2 Out"
#~ msgstr "AUX-Ausgang 2"

#~ msgid "AUX Out"
#~ msgstr "AUX-Ausgang"

#~ msgid "Bass"
#~ msgstr "Bass"

#~ msgid "Treble"
#~ msgstr "Höhen"

#~ msgid "3D Depth"
#~ msgstr "3D-Tiefe"

#~ msgid "3D Center"
#~ msgstr "3D-Mitte"

#~ msgid "3D Enhance"
#~ msgstr "3D-Erweiterung"

#~ msgid "Telephone"
#~ msgstr "Telefon"

#~ msgid "Microphone"
#~ msgstr "Mikrofon"

#~ msgid "Line Out"
#~ msgstr "Line-Ausgang"

#~ msgid "Line In"
#~ msgstr "Line-Eingang"

#~ msgid "Internal CD"
#~ msgstr "Interne CD"

#~ msgid "Video In"
#~ msgstr "Video-Eingang"

#~ msgid "AUX 1 In"
#~ msgstr "AUX-Eingang 1"

#~ msgid "AUX 2 In"
#~ msgstr "AUX-Eingang 2"

#~ msgid "AUX In"
#~ msgstr "AUX-Eingang"

#~ msgid "PCM"
#~ msgstr "PCM"

#~ msgid "Record Gain"
#~ msgstr "Aufnahmepegel"

#~ msgid "Output Gain"
#~ msgstr "Ausgabepegel"

#~ msgid "Microphone Boost"
#~ msgstr "Mikrofon-Boost"

#~ msgid "Loopback"
#~ msgstr "Schleife"

#~ msgid "Diagnostic"
#~ msgstr "Zur Diagnose"

#~ msgid "Bass Boost"
#~ msgstr "Bass-Boost"

#~ msgid "Playback Ports"
#~ msgstr "Wiedergabe-Ports"

#~ msgid "Input"
#~ msgstr "Eingang"

#~ msgid "Record Source"
#~ msgstr "Aufnahmequelle"

#~ msgid "Monitor Source"
#~ msgstr "Beobachtungsquelle"

#~ msgid "Keyboard Beep"
#~ msgstr "Tastaturpiepsen"

#~ msgid "Monitor"
#~ msgstr "Beobachtung"

#~ msgid "Simulate Stereo"
#~ msgstr "Stereo simulieren"

#~ msgid "Stereo"
#~ msgstr "Stereo"

#~ msgid "Surround Sound"
#~ msgstr "Surround-Ton"

#~ msgid "Microphone Gain"
#~ msgstr "Mikrofonpegel"

#~ msgid "Speaker Source"
#~ msgstr "Lautsprecherquelle"

#~ msgid "Microphone Source"
#~ msgstr "Mikrofonquelle"

#~ msgid "Jack"
#~ msgstr "Stecker"

#~ msgid "Center / LFE"
#~ msgstr "Mitte / LFE"

#~ msgid "Stereo Mix"
#~ msgstr "Stereo-Mischer"

#~ msgid "Mono Mix"
#~ msgstr "Mono-Mischer"

#~ msgid "Input Mix"
#~ msgstr "Aufnahme-Mischer"

#~ msgid "SPDIF In"
#~ msgstr "SPDIF-Eingang"

#~ msgid "SPDIF Out"
#~ msgstr "SPDIF-Ausgang"

#~ msgid "Microphone 1"
#~ msgstr "Mikrofon 1"

#~ msgid "Microphone 2"
#~ msgstr "Mikrofon 2"

#~ msgid "Digital Out"
#~ msgstr "Digitaler Ausgang"

#~ msgid "Digital In"
#~ msgstr "Digitaler Eingang"

#~ msgid "HDMI"
#~ msgstr "HDMI"

#~ msgid "Modem"
#~ msgstr "Modem"

#~ msgid "Handset"
#~ msgstr "Hörer"

#~ msgid "Other"
#~ msgstr "Andere"

#~ msgid "None"
#~ msgstr "Keine"

#~ msgid "On"
#~ msgstr "Ein"

#~ msgid "Off"
#~ msgstr "Aus"

#~ msgid "Mute"
#~ msgstr "Stumm"

#~ msgid "Fast"
#~ msgstr "Schnell"

#~ msgid "Very Low"
#~ msgstr "Sehr tief"

#~ msgid "Low"
#~ msgstr "Tief"

#~ msgid "Medium"
#~ msgstr "Mittel"

#~ msgid "High"
#~ msgstr "Hoch"

#~ msgid "Very High"
#~ msgstr "Sehr hoch"

#~ msgid "Production"
#~ msgstr "Produktion"

#~ msgid "Front Panel Microphone"
#~ msgstr "Mikrofon an der Front"

#~ msgid "Front Panel Line In"
#~ msgstr "Line-Eingang an der Front"

#~ msgid "Front Panel Headphones"
#~ msgstr "Kopfhörer an der Front"

#~ msgid "Front Panel Line Out"
#~ msgstr "Line-Ausgang an der Front"

#~ msgid "Green Connector"
#~ msgstr "Grüner Stecker"

#~ msgid "Pink Connector"
#~ msgstr "Rosa Stecker"

#~ msgid "Blue Connector"
#~ msgstr "Blauer Stecker"

#~ msgid "White Connector"
#~ msgstr "Weißer Stecker"

#~ msgid "Black Connector"
#~ msgstr "Schwarzer Stecker"

#~ msgid "Gray Connector"
#~ msgstr "Grauer Stecker"

#~ msgid "Orange Connector"
#~ msgstr "Oranger Stecker"

#~ msgid "Red Connector"
#~ msgstr "Roter Stecker"

#~ msgid "Yellow Connector"
#~ msgstr "Gelber Stecker"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Grüner Frontstecker"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Rosa Frontstecker"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Blauer Frontstecker"

#~ msgid "White Front Panel Connector"
#~ msgstr "Weißer Frontstecker"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Schwarzer Frontstecker"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Grauer Frontstecker"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Oranger Frontstecker"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Roter Frontstecker"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Gelber Frontstecker"

#~ msgid "Spread Output"
#~ msgstr "Verteilter Ausgang"
