# translation of gst-plugins-bad-0.10.21.2.po to Español
# spanish translation for gst-plugins-bad
# This file is put in the public domain.
# Jorge González <jorgegonz@svn.gnome.org>, 2007, 2008, 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-08-28 13:05+0200\n"
"PO-Revision-Date: 2011-10-02 15:47+0200\n"
"Last-Translator: Jorge González González <aloriel@gmail.com>\n"
"Language-Team: Spanish <es@li.org>\n"
"Language: es\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 "No se pudo leer la información del título para el DVD."

#, c-format
msgid "Failed to open DVD device '%s'."
msgstr "Falló abrir el dispositivo DVD «%s»."

msgid "Failed to set PGC based seeking."
msgstr "Falló al establecer la búsqueda basada en PGC."

msgid ""
"Could not read DVD. This may be because the DVD is encrypted and a DVD "
"decryption library is not installed."
msgstr ""
"No se pudo leer el DVD. Puede ser debido a que el DVD está cifrado y la "
"biblioteca de descifrado del DVD no está instalada."

msgid "Could not read DVD."
msgstr "No se pudo leer el DVD."

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 "No se especificó un nombre de archivo para su escritura."

#, c-format
msgid "Could not open file \"%s\" for writing."
msgstr "No se pudo abrir el archivo «%s» para escribir."

msgid "Internal data stream error."
msgstr "Error en el flujo de datos interno."

#, c-format
msgid "Could not write to file \"%s\"."
msgstr "No se pudo escribir en el archivo «%s»."

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

msgid "Failed to query sndio capabilities"
msgstr ""

#, fuzzy
msgid "Could not configure sndio"
msgstr "No se pudo abrir el archivo «%s» para leer."

#, fuzzy
msgid "Could not start sndio"
msgstr "No se pudo leer el DVD."

msgid "Internal data flow error."
msgstr "Error en el flujo de datos interno."

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 "El dispositivo «%s» no existe."

#, c-format
msgid "Could not open frontend device \"%s\"."
msgstr "No se pudo abrir el dispositivo frontend «%s»."

#, c-format
msgid "Could not get settings from frontend device \"%s\"."
msgstr "No se pudieron obtener los ajustes del dispositivo frontend «%s»."

#, c-format
msgid "Could not open file \"%s\" for reading."
msgstr "No se pudo abrir el archivo «%s» para leer."

#, fuzzy
msgid "Couldn't find DVB channel configuration file"
msgstr "Configuración del canal del mezclador virtual"

#, fuzzy, c-format
msgid "Couldn't load DVB channel configuration file: %s"
msgstr "Configuración del canal del mezclador virtual"

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 "Error en el reloj interno."

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr ""
#~ "No se pudo abrir el dispositivo de sonido para manejar el control del "
#~ "mezclador."

#~ msgid ""
#~ "Could not open audio device for mixer control handling. This version of "
#~ "the Open Sound System is not supported by this element."
#~ msgstr ""
#~ "No se pudo abrir el dispositivo para manejar el control del mezclador. "
#~ "Este elemento no soporta esta versión del Open Sound System."

#~ msgid "Volume"
#~ msgstr "Volumen"

#~ msgid "Master"
#~ msgstr "Maestro"

#~ msgid "Front"
#~ msgstr "Frontal"

#~ msgid "Rear"
#~ msgstr "Trasero"

#~ msgid "Headphones"
#~ msgstr "Auriculares"

#~ msgid "Center"
#~ msgstr "Centrado"

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

#~ msgid "Surround"
#~ msgstr "Sonido envolvente"

#~ msgid "Side"
#~ msgstr "Lateral"

#~ msgid "Built-in Speaker"
#~ msgstr "Altavoz integrado"

#~ msgid "AUX 1 Out"
#~ msgstr "Salida auxiliar 1"

#~ msgid "AUX 2 Out"
#~ msgstr "Salida auxiliar 2"

#~ msgid "AUX Out"
#~ msgstr "Salida auxiliar"

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

#~ msgid "Treble"
#~ msgstr "Agudos"

#~ msgid "3D Depth"
#~ msgstr "Profundidad 3D"

#~ msgid "3D Center"
#~ msgstr "Centro 3D"

#~ msgid "3D Enhance"
#~ msgstr "Mejora 3D"

#~ msgid "Telephone"
#~ msgstr "Teléfono"

#~ msgid "Microphone"
#~ msgstr "Micrófono"

#~ msgid "Line Out"
#~ msgstr "Línea de salida"

#~ msgid "Line In"
#~ msgstr "Línea de entrada"

#~ msgid "Internal CD"
#~ msgstr "CD interno"

#~ msgid "Video In"
#~ msgstr "Entrada de vídeo"

#~ msgid "AUX 1 In"
#~ msgstr "Entrada auxiliar 1"

#~ msgid "AUX 2 In"
#~ msgstr "Entrada auxiliar 2"

#~ msgid "AUX In"
#~ msgstr "Entrada auxiliar"

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

#~ msgid "Record Gain"
#~ msgstr "Ganancia de grabación"

#~ msgid "Output Gain"
#~ msgstr "Salida de grabación"

#~ msgid "Microphone Boost"
#~ msgstr "Aumento del micrófono"

#~ msgid "Loopback"
#~ msgstr "Bucle local"

#~ msgid "Diagnostic"
#~ msgstr "Diagnóstico"

#~ msgid "Bass Boost"
#~ msgstr "Aumento de bajos"

#~ msgid "Playback Ports"
#~ msgstr "Puertos de reproducción"

#~ msgid "Input"
#~ msgstr "Entrada"

#~ msgid "Record Source"
#~ msgstr "Origen de la grabación"

#~ msgid "Monitor Source"
#~ msgstr "Origen del monitor"

#~ msgid "Keyboard Beep"
#~ msgstr "Pitido del teclado"

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

#~ msgid "Simulate Stereo"
#~ msgstr "Simular estéreo"

#~ msgid "Stereo"
#~ msgstr "Estéreo"

#~ msgid "Surround Sound"
#~ msgstr "Sonido envolvente"

#~ msgid "Microphone Gain"
#~ msgstr "Ganancia del micrófono"

#~ msgid "Speaker Source"
#~ msgstr "Origen de los altavoces"

#~ msgid "Microphone Source"
#~ msgstr "Origen del micrófono"

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

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

#~ msgid "Stereo Mix"
#~ msgstr "Mezclador estéreo"

#~ msgid "Mono Mix"
#~ msgstr "Mezclador mono"

#~ msgid "Input Mix"
#~ msgstr "Mezclador de entrada"

#~ msgid "SPDIF In"
#~ msgstr "Entrada S/PDIF"

#~ msgid "SPDIF Out"
#~ msgstr "Salida S/PDIF"

#~ msgid "Microphone 1"
#~ msgstr "Micrófono 1"

#~ msgid "Microphone 2"
#~ msgstr "Micrófono 2"

#~ msgid "Digital Out"
#~ msgstr "Salida digital"

#~ msgid "Digital In"
#~ msgstr "Entrada digital"

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

#~ msgid "Modem"
#~ msgstr "Módem"

#~ msgid "Handset"
#~ msgstr "Auriculares"

#~ msgid "Other"
#~ msgstr "Otro"

#~ msgid "None"
#~ msgstr "Ninguno"

#~ msgid "On"
#~ msgstr "Encendido"

#~ msgid "Off"
#~ msgstr "Apagado"

#~ msgid "Mute"
#~ msgstr "Silenciar"

#~ msgid "Fast"
#~ msgstr "Rápido"

#~ msgid "Very Low"
#~ msgstr "Muy bajo"

#~ msgid "Low"
#~ msgstr "Bajo"

#~ msgid "Medium"
#~ msgstr "Medio"

#~ msgid "High"
#~ msgstr "Alto"

#~ msgid "Very High"
#~ msgstr "Muy alto"

#~ msgid "Production"
#~ msgstr "Producción"

#~ msgid "Front Panel Microphone"
#~ msgstr "Micrófono del panel frontal"

#~ msgid "Front Panel Line In"
#~ msgstr "Línea de entrada del panel frontal"

#~ msgid "Front Panel Headphones"
#~ msgstr "Auriculares del panel frontal"

#~ msgid "Front Panel Line Out"
#~ msgstr "Línea de salida del panel frontal"

#~ msgid "Green Connector"
#~ msgstr "Conector verde"

#~ msgid "Pink Connector"
#~ msgstr "Conector rosa"

#~ msgid "Blue Connector"
#~ msgstr "Conector azul"

#~ msgid "White Connector"
#~ msgstr "Conector blanco"

#~ msgid "Black Connector"
#~ msgstr "Conector negro"

#~ msgid "Gray Connector"
#~ msgstr "Conector gris"

#~ msgid "Orange Connector"
#~ msgstr "Conector naranja"

#~ msgid "Red Connector"
#~ msgstr "Conector rojo"

#~ msgid "Yellow Connector"
#~ msgstr "Conector amarillo"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Conector verde del panel frontal"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Conector rosa del panel frontal"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Conector azul del panel frontal"

#~ msgid "White Front Panel Connector"
#~ msgstr "Conector blanco del panel frontal"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Conector negro del panel frontal"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Conector gris del panel frontal"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Conector naranja del panel frontal"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Conector rojo del panel frontal"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Conector amarillo del panel frontal"

#~ msgid "Spread Output"
#~ msgstr "Expandir salida"

#~ msgid "Downmix"
#~ msgstr "Reducción de canales"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Entrada del mezclador virtual"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Salida del mezclador virtual"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Canales del mezclador virtual"

#~ msgid "%s Function"
#~ msgstr "Función %s"

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

#~ msgid ""
#~ "Could not open audio device for playback. Device is being used by another "
#~ "application."
#~ msgstr ""
#~ "No se pudo abrir el dispositivo de sonido para reproducir. Otra "
#~ "aplicación está usando el dispositivo."

#~ msgid ""
#~ "Could not open audio device for playback. You don't have permission to "
#~ "open the device."
#~ msgstr ""
#~ "No se pudo abrir el dispositivo de sonido para reproducir. No tiene "
#~ "permiso para abrir el dispositivo."

#~ msgid "Could not open audio device for playback."
#~ msgstr "No se pudo abrir el dispositivo de sonido para reproducción."

#~ msgid ""
#~ "Could not open audio device for playback. This version of the Open Sound "
#~ "System is not supported by this element."
#~ msgstr ""
#~ "No se pudo abrir el dispositivo para reproducir. Este elemento no soporta "
#~ "esta versión del Open Sound System."

#~ msgid "Playback is not supported by this audio device."
#~ msgstr "Este dispositivo de sonido no soporta reproducción."

#~ msgid "Audio playback error."
#~ msgstr "Error en la reproducción del sonido."

#~ msgid "Recording is not supported by this audio device."
#~ msgstr "Este dispositivo de sonido no soporta grabación."

#~ msgid "Error recording from audio device."
#~ msgstr "Error al grabar desde el dispositivo de sonido."

#~ 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 "Función del conector verde"

#~ msgid "Green front panel connector function"
#~ msgstr "Función del conector verde del panel frontal"

#~ msgid "Pink connector function"
#~ msgstr "Función del conector rosa"

#~ msgid "Pink front panel connector function"
#~ msgstr "Función del conector rosa del panel frontal"

#~ msgid "Blue connector function"
#~ msgstr "Función del conector azul"

#~ msgid "Blue front panel connector function"
#~ msgstr "Función del conector azul del panel frontal"

#~ msgid "Orange connector function"
#~ msgstr "Función del conector naranja"

#~ msgid "Orange front panel connector function"
#~ msgstr "Función del conector naranja del panel frontal"

#~ msgid "Black connector function"
#~ msgstr "Función del conector negro"

#~ msgid "Black front panel connector function"
#~ msgstr "Función del conector negro del panel frontal"

#~ msgid "Gray connector function"
#~ msgstr "Función del conector gris"

#~ msgid "Gray front panel connector function"
#~ msgstr "Función del conector gris del panel frontal"

#~ msgid "White connector function"
#~ msgstr "Función del conector blanco"

#~ msgid "White front panel connector function"
#~ msgstr "Función del conector blanco del panel frontal"

#~ msgid "Red connector function"
#~ msgstr "Función del conector rojo"

#~ msgid "Red front panel connector function"
#~ msgstr "Función del conector rojo del panel frontal"

#~ msgid "Yellow connector function"
#~ msgstr "Función del conector amarillo"

#~ msgid "Yellow front panel connector function"
#~ msgstr "Función del conector amarillo del panel frontal"

#~ msgid "Failed to configure TwoLAME encoder. Check your encoding parameters."
#~ msgstr ""
#~ "Falló al configurar el codificador TwoLAME. Compruebe sus parámetros de "
#~ "codificación."

#~ msgid ""
#~ "The requested bitrate %d kbit/s for property '%s' is not allowed. The "
#~ "bitrate was changed to %d kbit/s."
#~ msgstr ""
#~ "La tasa de bits %d kbps solicitada para la propiedad «%s» no está "
#~ "permitida. La tasa de bits se cambió a %d kbps."
