# Galician translation of gst-plugins-good.
# Copyright (C) 2009 gst-plugins-good's COPYRIGHT HOLDER
# This file is distributed under the same license as the gst-plugins-good package.
# Fran Diéguez <frandieguez@ubuntu.com>, 2009, 2010, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.26.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2012-09-24 14:00+0100\n"
"PO-Revision-Date: 2011-01-09 21:20+0100\n"
"Last-Translator: Fran Diéguez <frandieguez@ubuntu.com>\n"
"Language-Team: Galician <proxecto@trasno.net>\n"
"Language: gl\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"

#. TRANSLATORS: 'song title' by 'artist name'
#, c-format
msgid "'%s' by '%s'"
msgstr "«%s» por «%s»"

msgid "Failed to decode JPEG image"
msgstr "Produciuse un erro ao descodificar a imaxe JPEG"

msgid "Could not connect to server"
msgstr "Non foi posíbel conectarse ao servidor"

msgid "Server does not support seeking."
msgstr "O servidor non admite a busca."

msgid "Could not resolve server name."
msgstr "Non foi posíbel resolver o nome do servidor."

msgid "Could not establish connection to server."
msgstr "Non foi posíbel estabelecer a conexión co servidor."

msgid "Secure connection setup failed."
msgstr "Produciuse un fallo de configuración da conexión segura."

msgid ""
"A network error occured, or the server closed the connection unexpectedly."
msgstr ""
"Produciuse un erro de rede ou o servidor pechou a conexión de forma "
"inesperada."

msgid "Server sent bad data."
msgstr "O servidor enviou datos erróneos."

msgid "No URL set."
msgstr "No existe un URL estabelecido."

msgid "Internal data stream error."
msgstr "Produciuse un erro no fluxo de datos interno."

msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr "O audio non existe ou non é válido, o fluxo AVI está corrompido."

msgid "This file contains no playable streams."
msgstr "Este ficheiro non contén ningún fluxo reproducíbel."

msgid "This file is invalid and cannot be played."
msgstr "Este ficheiro é incorrecto e non pode reproducirse."

msgid "This file is corrupt and cannot be played."
msgstr "Este ficheiro está danado e non pode reproducirse."

msgid "Invalid atom size."
msgstr "Tamaño atom non válido."

msgid "This file is incomplete and cannot be played."
msgstr "Este ficheiro está incompleto e non pode reproducirse."

msgid "The video in this file might not play correctly."
msgstr "Este vídeo neste ficheiro podería non reproducirse correctamente."

#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr ""
"Este ficheiro contén demasiados fluxos. Só se reproducirá o primeiro %d"

msgid ""
"No supported stream was found. You might need to install a GStreamer RTSP "
"extension plugin for Real media streams."
msgstr ""
"Non se encontrou un fluxo compatíbel. Pode que necesite instalar unha "
"extensión RTSP de GStreamer para os formatos de fluxo Real."

msgid ""
"No supported stream was found. You might need to allow more transport "
"protocols or may otherwise be missing the right GStreamer RTSP extension "
"plugin."
msgstr ""
"Non se encontrou un fluxo compatíbel. Pode que necesite permitir máis "
"protocolos de transporte ou de outra forma pode que lle falte a extensión "
"correcta de RTSP de GStreamer."

msgid "Internal data flow error."
msgstr "Produciuse un erro interno no fluxo de datos."

msgid ""
"Could not open audio device for playback. Device is being used by another "
"application."
msgstr ""
"Non foi posíbel abrir o dispositivo de son para a reprodución. O dispositivo "
"está sendo empregado por outro aplicativo."

msgid ""
"Could not open audio device for playback. You don't have permission to open "
"the device."
msgstr ""
"Non foi posíbel abrir o dispositivo de son. Vostede non ten permisos para "
"abrir o dispositivo."

msgid "Could not open audio device for playback."
msgstr "Non foi posíbel abrir o dispositivo de son para a reprodución."

msgid ""
"Could not open audio device for recording. You don't have permission to open "
"the device."
msgstr ""
"Non foi posíbel abrir o dispositivo de son para a gravación. Vostede non ten "
"permisos para abrir o dispositivo."

msgid "Could not open audio device for recording."
msgstr "Non foi posíbel abrir o dispositivo de son para a gravación."

msgid ""
"Could not open audio device for playback. This version of the Open Sound "
"System is not supported by this element."
msgstr ""
"Non foi posíbel abrir o dispositivo de son para a reprodución. Esta versión "
"do Open Sound System non está admitida por este elemento."

msgid "Playback is not supported by this audio device."
msgstr "Este dispositivo de son non admite a reprodución."

msgid "Audio playback error."
msgstr "Erro de reprodución de son."

msgid "Recording is not supported by this audio device."
msgstr "Este dispositivo de son non admite a gravación."

msgid "Error recording from audio device."
msgstr "Erro ao gravar do dispositivo de son."

msgid "Volume"
msgstr "Volume"

msgid "Gain"
msgstr "Ganancia"

msgid "Monitor"
msgstr "Monitor"

msgid "Built-in Speaker"
msgstr "Altofalante interno"

msgid "Headphone"
msgstr "Cascos"

msgid "Line Out"
msgstr "Liña de saída"

msgid "SPDIF Out"
msgstr "Saída SPDIF"

msgid "AUX 1 Out"
msgstr "Saída AUX 1"

msgid "AUX 2 Out"
msgstr "Saída AUX 2"

#, c-format
msgid "Error reading %d bytes from device '%s'."
msgstr "Produciuse un erro ao ler %d bytes desde o dispositivo «%s»."

#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr ""

#, c-format
msgid "Could not map buffers from device '%s'"
msgstr "Non foi posíbel mapear os búferes do dispositivo «%s»"

#, fuzzy, c-format
msgid "The driver of device '%s' does not support the IO method %d"
msgstr ""
"O controlador do dispositivo «%s» non admite ningún método de captura "
"coñecido."

#, fuzzy, c-format
msgid "The driver of device '%s' does not support any known IO method."
msgstr ""
"O controlador do dispositivo «%s» non admite ningún método de captura "
"coñecido."

#, fuzzy, c-format
msgid "Device '%s' does not support video capture"
msgstr "O dispositivo «%s» non é un dispositivo de captura."

#, fuzzy, c-format
msgid "Device '%s' is busy"
msgstr "O dispositivo «%s» non é un dispositivo de captura."

#, fuzzy, c-format
msgid "Device '%s' cannot capture at %dx%d"
msgstr "O dispositivo «%s» non é un dispositivo de captura."

#, fuzzy, c-format
msgid "Device '%s' cannot capture in the specified format"
msgstr "O dispositivo «%s» non é un dispositivo de captura."

#, c-format
msgid "Could not get parameters on device '%s'"
msgstr "Non foi posíbel obter os parámetros para o dispositivo «%s»"

#, fuzzy
msgid "Video device did not accept new frame rate setting."
msgstr ""
"O dispositivo de entrada de vídeo non aceptou o axuste da nova taxa de "
"fotogramas."

msgid "Video device could not create buffer pool."
msgstr ""

#, fuzzy, c-format
msgid "Failed to get settings of tuner %d on device '%s'."
msgstr ""
"Produciuse un erro ao configurar o sintonizador %d no dispositivo «%s»."

#, fuzzy, c-format
msgid "Error getting capabilities for device '%s'."
msgstr "Produciuse un erro ao ler %d bytes desde o dispositivo «%s»."

#, fuzzy, c-format
msgid "Device '%s' is not a tuner."
msgstr "O dispositivo «%s» non é un dispositivo de captura."

#, fuzzy, c-format
msgid "Failed to get radio input on device '%s'. "
msgstr "Produciuse un fallo ao estabelecer a entrada %d no dispositivo %s."

#, c-format
msgid "Failed to set input %d on device %s."
msgstr "Produciuse un fallo ao estabelecer a entrada %d no dispositivo %s."

#, fuzzy, c-format
msgid "Failed to change mute state for device '%s'."
msgstr ""
"Produciuse un erro ao obter a potencia do sinal para o dispositivo «%s»."

#, c-format
msgid ""
"Error getting capabilities for device '%s': It isn't a v4l2 driver. Check if "
"it is a v4l1 driver."
msgstr ""
"Produciuse un erro ao obter as capacidades do dispositivo «%s»: Non é un "
"controlador v4l2. Comprobe se é un controlador v4l1."

#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr ""
"Produciuse un erro ao consultar os atributos de entrada %d no dispositivo %s"

#, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr ""
"Produciuse un erro ao configurar o sintonizador %d no dispositivo «%s»."

#, c-format
msgid "Failed to query norm on device '%s'."
msgstr "Produciuse un erro ao consultar a norma no dispositivo «%s»."

#, c-format
msgid "Failed getting controls attributes on device '%s'."
msgstr ""
"Produciuse un erro ao obter os atributos de control do dispositivo «%s»."

#, c-format
msgid "Cannot identify device '%s'."
msgstr "Non foi posíbel identificar o dispositivo «%s»."

#, c-format
msgid "This isn't a device '%s'."
msgstr "Este non é un dispositivo «%s»."

#, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "Non foi posíbel abrir o dispositivo «%s» para lectura e escritura."

#, c-format
msgid "Device '%s' is not a capture device."
msgstr "O dispositivo «%s» non é un dispositivo de captura."

#, c-format
msgid "Device '%s' is not a output device."
msgstr "O dispositivo «%s» non é un dispositivo de captura."

#, c-format
msgid "Failed to set norm for device '%s'."
msgstr "Produciuse un fallo ao estabelecer a norma no dispositivo «%s»."

#, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr ""
"Produciuse un fallo  ao obter a frecuencia actual do sintonizador para o "
"dispositivo «%s»."

#, c-format
msgid "Failed to set current tuner frequency for device '%s' to %lu Hz."
msgstr ""
"Produciuse un erro ao estabelecer a frecuencia actual do sintonizador para o "
"dispositivo «%s» a %lu Hz."

#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr ""
"Produciuse un erro ao obter a potencia do sinal para o dispositivo «%s»."

#, c-format
msgid "Failed to get value for control %d on device '%s'."
msgstr ""
"Produciuse un erro ao obter o valor para o control %d do dispositivo «%s»."

#, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr ""
"Produciuse un fallo ao estabelecer o valor %ds para o control %d do "
"dispositivo «%s»."

#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr ""
"Produciuse un fallo ao obter a entrada actual no dispositivo «%s». Cicáis "
"sexa un dispositivo de radio."

#, c-format
msgid ""
"Failed to get current output on device '%s'. May be it is a radio device"
msgstr ""
"Produciuse un fallo ao obter a entrada actual no dispositivo «%s». Quizais "
"sexa un dispositivo de radio"

#, c-format
msgid "Failed to set output %d on device %s."
msgstr "Produciuse un fallo ao estabelecer a saída %d no dispositivo %s."

msgid "Changing resolution at runtime is not yet supported."
msgstr "Aínda non se admite o cambio de resolución durante a reprodución."

msgid "Cannot operate without a clock"
msgstr "Non é posíbel operar sen reloxo"

#~ msgid "Got unexpected frame size of %u instead of %u."
#~ msgstr "Obtívose un tamaño de marco de %u non esperado no lugar de %u."

#~ msgid "Failed trying to get video frames from device '%s'."
#~ msgstr ""
#~ "Produciuse un fallo ao tentar obter cadros de vídeo do dispositivo «%s»."

#~ msgid "Failed after %d tries. device %s. system error: %s"
#~ msgstr ""
#~ "Prouciuse un fallo despois de %d intentos. Dispositivo %s. Error do "
#~ "sistema: %s"

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

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

#~ msgid "Synth"
#~ msgstr "Sintetizador"

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

#~ msgid "Speaker"
#~ msgstr "Altofalante"

#~ msgid "Line-in"
#~ msgstr "Liña de entrada"

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

#~ msgid "CD"
#~ msgstr "CD"

#~ msgid "Mixer"
#~ msgstr "Misturador"

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

#~ msgid "Record"
#~ msgstr "Gravar"

#~ msgid "In-gain"
#~ msgstr "Ganancia de entrada"

#~ msgid "Out-gain"
#~ msgstr "Ganancia de saída"

#~ msgid "Line-1"
#~ msgstr "Liña 1"

#~ msgid "Line-2"
#~ msgstr "Liña 2"

#~ msgid "Line-3"
#~ msgstr "Liña 3"

#~ msgid "Digital-1"
#~ msgstr "Dixital 1"

#~ msgid "Digital-2"
#~ msgstr "Dixital 2"

#~ msgid "Digital-3"
#~ msgstr "Dixital 3"

#~ msgid "Phone-in"
#~ msgstr "Entrada teléfono"

#~ msgid "Phone-out"
#~ msgstr "Saída teléfono"

#~ msgid "Video"
#~ msgstr "Vídeo"

#~ msgid "Radio"
#~ msgstr "Radio"

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr ""
#~ "Non foi posíbel abrir o dispositivo de son para a súa xestión polo "
#~ "control de misturado."

#~ msgid ""
#~ "Could not open audio device for mixer control handling. This version of "
#~ "the Open Sound System is not supported by this element."
#~ msgstr ""
#~ "Non foi posíbel abrir o dispositivo de son para a súa xestión polo "
#~ "control de misturado. Este elemento non admite esta versión do Open Sound "
#~ "System."

#~ msgid "Master"
#~ msgstr "Mestre"

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

#~ msgid "Rear"
#~ msgstr "Treseiro"

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

#~ msgid "Center"
#~ msgstr "Centro"

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

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

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

#~ msgid "AUX Out"
#~ msgstr "Saída AUX"

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

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

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

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

#~ msgid "Line In"
#~ msgstr "Liña de entrada"

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

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

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

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

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

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

#~ msgid "Output Gain"
#~ msgstr "Ganancia de saída"

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

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

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

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

#~ msgid "Playback Ports"
#~ msgstr "Portos de reprodución"

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

#~ msgid "Record Source"
#~ msgstr "Orixe da gravación"

#~ msgid "Monitor Source"
#~ msgstr "Monitor de orixe"

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

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

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

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

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

#~ msgid "Speaker Source"
#~ msgstr "Altofalante de orixe"

#~ msgid "Microphone Source"
#~ msgstr "Micrófono de orixe"

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

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

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

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

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

#~ msgid "SPDIF In"
#~ msgstr "Entrada SPDIF"

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

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

#~ msgid "Digital Out"
#~ msgstr "Saída dixital"

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

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

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

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

#~ msgid "Other"
#~ msgstr "Outro"

#~ msgid "None"
#~ msgstr "Ningún"

#~ msgid "On"
#~ msgstr "Acendido"

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

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

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

#~ msgid "Very Low"
#~ msgstr "Moi baixo"

#~ msgid "Low"
#~ msgstr "Baixo"

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

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

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

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

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

#~ msgid "Front Panel Line In"
#~ msgstr "Entrada do panel frontal"

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

#~ msgid "Front Panel Line Out"
#~ msgstr "Saída do panel frontal"

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

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

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

#~ msgid "White Connector"
#~ msgstr "Conectador branco"

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

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

#~ msgid "Orange Connector"
#~ msgstr "Conectador laranxa"

#~ msgid "Red Connector"
#~ msgstr "Conectador vermello"

#~ msgid "Yellow Connector"
#~ msgstr "Conectador amarelo"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Conectador verde do panel frontal"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Conectador rosa do panel frontal"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Conectador azul do panel frontal"

#~ msgid "White Front Panel Connector"
#~ msgstr "Conectador branco do panel frontal"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Conectador negro do panel frontal"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Conectador gris do panel frontal"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Conectador laranxado panel frontal"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Conectador vermello do panel frontal"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Conectador amarelo do panel frontal"

#~ msgid "Spread Output"
#~ msgstr "Expandir saída"

#~ msgid "Downmix"
#~ msgstr "Redución de canles"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Entrada do misturador virtual"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Saída do misturador virtual"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Canles do misturador virtual"

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

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

#~ msgid "Error reading %d bytes on device '%s'."
#~ msgstr "Produciuse un erro ao ler %d bytes do dispositivo «%s»."

#~ msgid "Could not enqueue buffers in device '%s'."
#~ msgstr "Non é posíbel meter na cola os búferes no dispositivo «%s»."

#~ msgid "Could not establish connection to sound server"
#~ msgstr "Non foi posíbel estabelecer a conexión co servidor de son"

#~ msgid "Failed to query sound server capabilities"
#~ msgstr "Produciuse un erro ao consultar as capacidades do servidor de son"

#~ msgid "Describes the selected input element."
#~ msgstr "Describe o elemento de entrada seleccionado."

#~ msgid "Describes the selected output element for Audio/Video Conferencing."
#~ msgstr ""
#~ "Describe o elemento de saída seleccionado para a Conferencia de Audio/"
#~ "Vídeo."

#~ msgid "Describes the selected output element for Music and Movies."
#~ msgstr ""
#~ "Describe o elemento de saída seleccionado para a Música e Películas."

#~ msgid "Describes the selected output element."
#~ msgstr "Describe o elemento de saída seleccionado."

#~ msgid "GStreamer audiosink for Audio/Video Conferencing"
#~ msgstr "GStreamer audiosink para a Conferencia de Audio/Video"

#~ msgid "GStreamer audiosink for Music and Movies"
#~ msgstr "GStreamer audiosink para Música e Filmes"

#~ msgid ""
#~ "GStreamer can play audio using any number of output elements. Some "
#~ "possible choices are osssink, esdsink and alsasink. The audiosink can be "
#~ "a partial pipeline instead of just one element."
#~ msgstr ""
#~ "GStreamer pode reproducir audio empregando calquera número de elementos "
#~ "de saída. Algunha elección posíbel é ossink, esdsink e alsasink. O "
#~ "audiosink pode ser un pipeline parcial no cando de só un elemento único."

#~ 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 pode reproducir vídeo usando calquera número de elementos de "
#~ "saída. As posíbeis eleccións son xvimagesink, ximagesink, sdlvideosink e "
#~ "aasink. O videosink pode ser un pipeline parcial no lugar de un elemento "
#~ "único."

#~ msgid ""
#~ "GStreamer can put visualization plugins in a pipeline to transform audio "
#~ "stream in video frames. Default is goom but more visualization plugins "
#~ "will be ported soon. The visualization plugin can be a partial pipeline "
#~ "instead of just one element."
#~ msgstr ""
#~ "GStreamer pode poñer engadidos de visualización nun pipeline para "
#~ "transformar un fluxo de audio en marcos de vídeo. Por omisión é goom pero "
#~ "pronto convertiránse máis visualizacións. O engadido de visualización "
#~ "pode ser un pipeline parcial no lugar de só un elemento."

#~ msgid ""
#~ "GStreamer can record audio using any number of input elements. Some "
#~ "possible choices are osssrc, esdsrc and alsasrc. The audio source can be "
#~ "a partial pipeline instead of just one element."
#~ msgstr ""
#~ "GStreamer pode gravar audio usando calquera número de elementos de "
#~ "entrada. Algunhas das posíbeis eleccións son osssrc, esdsrc e alsasrc. A "
#~ "orixe do audio pode ser un pipeline parcial no lugar de un só elemento."

#~ msgid ""
#~ "GStreamer can record video from any number of input elements. Some "
#~ "possible choices are v4lsrc and videotestsrc. The video source can be a "
#~ "partial pipeline instead of just one element."
#~ msgstr ""
#~ "GStreamer pode gravar audio usando calquera número de elementos de "
#~ "entrada. Algunhas das posíbeis eleccións son v4lsrc e videotestsrc. A "
#~ "orixe do audio pode ser un pipeline parcial no lugar de un só elemento."

#~ msgid "default GStreamer audio source"
#~ msgstr "orixe de son de GStreamer predefinida"

#~ msgid "default GStreamer audiosink"
#~ msgstr "orixe do audiosink GStreamer predefinida"

#~ msgid "default GStreamer video source"
#~ msgstr "orixe do vídeo de GStreamer predefinido"

#~ msgid "default GStreamer videosink"
#~ msgstr "videosink de GStreamer predefinido"

#~ msgid "default GStreamer visualization plugin"
#~ msgstr "engadido de visualización GStreamer predefinido"

#~ msgid "description for GStreamer audiosink for Audio/Video Conferencing"
#~ msgstr ""
#~ "descrición para o audiosink GStreamer para a conferencia de audio/vídeo"

#~ msgid "description for GStreamer audiosink for Music and Movies"
#~ msgstr "descrición para o audiosink de GStreamer para Música e Filmes"

#~ msgid "description for default GStreamer audiosink"
#~ msgstr "descrición para o audiosink de GStreamer predefinido"

#~ msgid "description for default GStreamer audiosrc"
#~ msgstr "descrición para o audiosrc de GStreamer predefinido"
