# German po for gst-plugins-bad 0.10.21.2
# 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.
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-bad 0.10.21.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2013-09-24 14:34+0200\n"
"PO-Revision-Date: 2011-04-28 00:04+0200\n"
"Last-Translator: Christian Kirbach <christian.kirbach@googlemail.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"

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 ""

msgid "Couldn't get the Manifest's URI"
msgstr ""

msgid "Failed to get fragment URL."
msgstr ""

msgid "Couldn't download fragments"
msgstr ""

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

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

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

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

msgid "Could not establish connection to sndio"
msgstr ""

msgid "Failed to query sndio capabilities"
msgstr ""

#, fuzzy
msgid "Could not configure sndio"
msgstr "Datei »%s« konnte nicht zum Lesen geöffnet werden."

#, fuzzy
msgid "Could not start sndio"
msgstr "DVD konnten nicht gelesen werden."

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

msgid "Generated file has a larger preroll time than its streams duration"
msgstr ""

#, c-format
msgid "Missing element '%s' - check your GStreamer installation."
msgstr ""

msgid "File location is set to NULL, please set it to a valid filename"
msgstr ""

msgid "Subpicture format was not configured before data flow"
msgstr ""

#, c-format
msgid "Given file name \"%s\" can't be converted to local file name encoding."
msgstr ""

#, 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 "Could not open file \"%s\" for reading."
msgstr "Datei »%s« konnte nicht zum Lesen geöffnet werden."

#, fuzzy
msgid "Couldn't find DVB channel configuration file"
msgstr "Konfiguration des virtuellen Mischers"

#, fuzzy, c-format
msgid "Couldn't load DVB channel configuration file: %s"
msgstr "Konfiguration des virtuellen Mischers"

msgid "DVB channel configuration file doesn't contain any channels"
msgstr ""

#, c-format
msgid "Couldn't find details for DVB channel %s"
msgstr ""

#~ 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"

# Als Downmix wird im Bereich der Tontechnik ein manuelles oder automatisches Verfahren bezeichnet, bei dem der Ton eines Mehrkanal-Tonformats zu einer Fassung mit weniger unabhängigen Kanälen zusammengefasst wird. In den meisten Fällen ist dies eine Stereo-Fassung.
#~ msgid "Downmix"
#~ msgstr "Downmix"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Eingang des virtuellen Mischers"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Ausgang des virtuellen Mischers"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Kanäle des virtuellen Mischers"

#~ msgid "%s Function"
#~ msgstr "%s-Funktion"

#~ msgid "%s %d"
#~ msgstr "%s %d"

#~ msgid ""
#~ "Could not open audio device for playback. Device is being used by another "
#~ "application."
#~ msgstr ""
#~ "Das Audio-Gerät konnte nicht zur Wiedergabe geöffnet werden. Das Gerät "
#~ "wird von einer anderen Anwendung verwendet."

#~ msgid ""
#~ "Could not open audio device for playback. You don't have permission to "
#~ "open the device."
#~ msgstr ""
#~ "Das Audio-Gerät konnte nicht zur Wiedergabe geöffnet werden.  Sie haben "
#~ "nicht die Berechtigungen zum Öffnen des Gerätes."

#~ msgid "Could not open audio device for playback."
#~ msgstr "Das Audio-Gerät konnte nicht zur Wiedergabe geöffnet werden. "

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

#~ msgid "Playback is not supported by this audio device."
#~ msgstr "Die Wiedergabe wird nicht von diesem Audio-Gerät unterstützt."

#~ msgid "Audio playback error."
#~ msgstr "Fehler bei Audio-Wiedergabe."

#~ msgid "Recording is not supported by this audio device."
#~ msgstr "Die Aufnahme wird nicht von diesem Audio-Gerät unterstützt."

#~ msgid "Error recording from audio device."
#~ msgstr "Fehler bei der Aufnahme vom Audio-Gerät."

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

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

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

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

#~ msgid "Green connector function"
#~ msgstr "Funktion des grünen Steckers"

#~ msgid "Green front panel connector function"
#~ msgstr "Funktion des grünen Frontsteckers"

#~ msgid "Pink connector function"
#~ msgstr "Funktion des rosa Steckers"

#~ msgid "Pink front panel connector function"
#~ msgstr "Funktion des rosa Frontsteckers"

#~ msgid "Blue connector function"
#~ msgstr "Funktion des blauen Steckers"

#~ msgid "Blue front panel connector function"
#~ msgstr "Funktion des blauen Frontsteckers"

#~ msgid "Orange connector function"
#~ msgstr "Funktion des orangen Steckers"

#~ msgid "Orange front panel connector function"
#~ msgstr "Funktion des orangen Frontsteckers"

#~ msgid "Black connector function"
#~ msgstr "Funktion des schwarzen Steckers"

#~ msgid "Black front panel connector function"
#~ msgstr "Funktion des schwarzen Frontsteckers"

#~ msgid "Gray connector function"
#~ msgstr "Funktion des grauen Steckers"

#~ msgid "Gray front panel connector function"
#~ msgstr "Funktion des grauen Frontsteckers"

#~ msgid "White connector function"
#~ msgstr "Funktion des weißen Steckers"

#~ msgid "White front panel connector function"
#~ msgstr "Funktion des weißen Frontsteckers"

#~ msgid "Red connector function"
#~ msgstr "Funktion des roten Steckers"

#~ msgid "Red front panel connector function"
#~ msgstr "Funktion des roten Frontsteckers"

#~ msgid "Yellow connector function"
#~ msgstr "Funktion des gelben Steckers"

#~ msgid "Yellow front panel connector function"
#~ msgstr "Funktion des gelben Frontsteckers"
