# translation of gst-plugins-bad.master.po to Basque
# Copyright (C) 2004, 2005, 2006, 2008, 2009, 2010 Free Software Foundation, Inc.
# This file is distributed under the same license as the gst-plugins-bad package.
#
# Iñaki Larrañaga Murgoitio <dooteo@euskalgnu.org>, 2009, 2010.
# Mikel Olasagasti Uranga <hey_neken@mundurat.net>, 2009, 2010.
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-bad-0.10.17.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2015-06-24 22:59+0200\n"
"PO-Revision-Date: 2010-03-25 12:30+0100\n"
"Last-Translator: Mikel Olasagasti Uranga <hey_neken@mundurat.net>\n"
"Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"
"Language: eu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

msgid "format wasn't negotiated before get function"
msgstr ""

msgid "default GStreamer sound events audiosink"
msgstr ""

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

msgid "description for default GStreamer sound events audiosink"
msgstr ""

msgid "Describes the selected audiosink element."
msgstr ""

msgid "default GStreamer audiosink for Audio/Video Conferencing"
msgstr ""

msgid ""
"description for default GStreamer audiosink for Audio/Video Conferencing"
msgstr ""

msgid "default GStreamer audiosink for Music and Movies"
msgstr ""

msgid "description for default GStreamer audiosink for Music and Movies"
msgstr ""

msgid "default GStreamer videosink"
msgstr ""

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

msgid "description for default GStreamer videosink"
msgstr ""

msgid "Describes the selected videosink element."
msgstr ""

msgid "default GStreamer audiosrc"
msgstr ""

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

msgid "description for default GStreamer audiosrc"
msgstr ""

msgid "Describes the selected audiosrc element."
msgstr ""

msgid "default GStreamer videosrc"
msgstr ""

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

msgid "description for default GStreamer videosrc"
msgstr ""

msgid "Describes the selected videosrc element."
msgstr ""

msgid "default GStreamer visualization"
msgstr ""

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

msgid "description for default GStreamer visualization"
msgstr ""

msgid "Describes the selected visualization element."
msgstr ""

msgid "OpenCV failed to load template image"
msgstr ""

msgid "Could not read title information for DVD."
msgstr "Ezin izan da DVDaren tituluaren informazioa irakurri."

#, c-format
msgid "Failed to open DVD device '%s'."
msgstr "Huts egin du '%s' DVD gailua irekitzean."

msgid "Failed to set PGC based seeking."
msgstr "Huts egin du PGC oinarriko kokapena ezartzean."

msgid ""
"Could not read DVD. This may be because the DVD is encrypted and a DVD "
"decryption library is not installed."
msgstr ""

#, fuzzy
msgid "Could not read DVD."
msgstr "Ezin izan da DVDaren tituluaren informazioa irakurri."

msgid "This file contains no playable streams."
msgstr ""

#, fuzzy
msgid "Could not open sndfile stream for reading."
msgstr "Ezin izan da \"%s\" fitxategia ireki irakurtzeko."

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

msgid "Failed to query sndio capabilities"
msgstr ""

#, fuzzy
msgid "Could not configure sndio"
msgstr "Ezin izan da \"%s\" fitxategia ireki irakurtzeko."

#, fuzzy
msgid "Could not start sndio"
msgstr "Ezin izan da DVDaren tituluaren informazioa irakurri."

msgid "Internal data flow error."
msgstr "Datu-korrontearen barne-errorea."

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 "Digitalzoom element cound't be created"
msgstr ""

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

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

msgid "Internal data stream error."
msgstr "Datu-korrontearen barne-errorea."

msgid "Couldn't download fragments"
msgstr ""

msgid "No file name specified for writing."
msgstr "Ez da fitxategi-izenik zehaztu idazteko."

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

#, c-format
msgid "Could not open file \"%s\" for writing."
msgstr "Ezin izan da \"%s\" fitxategia ireki idazteko."

#, c-format
msgid "Device \"%s\" does not exist."
msgstr "\"%s\" gailua ez dago."

#, c-format
msgid "Could not open frontend device \"%s\"."
msgstr "Ezin izan da \"%s\" kontrol-gailua ireki."

#, c-format
msgid "Could not get settings from frontend device \"%s\"."
msgstr "Ezin izan dira \"%s\" kontrol-gailuaren ezarpenak eskuratu."

#, fuzzy, c-format
msgid "Cannot enumerate delivery systems from frontend device \"%s\"."
msgstr "Ezin izan dira \"%s\" kontrol-gailuaren ezarpenak eskuratu."

#, c-format
msgid "Could not open file \"%s\" for reading."
msgstr "Ezin izan da \"%s\" fitxategia ireki irakurtzeko."

msgid "Couldn't find DVB channel configuration file"
msgstr ""

#, c-format
msgid "Couldn't load DVB channel configuration file: %s"
msgstr ""

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

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

#~ msgid "Could not write to file \"%s\"."
#~ msgstr "Ezin izan da idatzi \"%s\" fitxategian."

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr ""
#~ "Ezin izan da audioko gailua ireki nahastailearen kontrola kudeatzeko."

#~ msgid ""
#~ "Could not open audio device for mixer control handling. This version of "
#~ "the Open Sound System is not supported by this element."
#~ msgstr ""
#~ "Ezin izan da audioko gailua ireki nahastailearen kontrola kudeatzeko. "
#~ "Elementu honek ez du onartzen Open Sound System-en bertsio hau."

#~ msgid "Volume"
#~ msgstr "Bolumena"

#~ msgid "Master"
#~ msgstr "Maisua"

#~ msgid "Front"
#~ msgstr "Aurrealdekoa"

#~ msgid "Rear"
#~ msgstr "Atzealdekoa"

#~ msgid "Headphones"
#~ msgstr "Aurikularrak"

#~ msgid "Center"
#~ msgstr "Erdikoa"

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

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

#~ msgid "Side"
#~ msgstr "Albokoa"

#~ msgid "Built-in Speaker"
#~ msgstr "Barneko bozgorailua"

#~ msgid "AUX 1 Out"
#~ msgstr "1. irteera lagungarria"

#~ msgid "AUX 2 Out"
#~ msgstr "2. irteera lagungarria"

#~ msgid "AUX Out"
#~ msgstr "Irteera lagungarria"

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

#~ msgid "Treble"
#~ msgstr "Altua"

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

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

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

#~ msgid "Telephone"
#~ msgstr "Telefonoa"

#~ msgid "Microphone"
#~ msgstr "Mikrofonoa"

#~ msgid "Line Out"
#~ msgstr "Irteerako linea"

#~ msgid "Line In"
#~ msgstr "Sarrerako linea"

#~ msgid "Internal CD"
#~ msgstr "Barneko CDa"

#~ msgid "Video In"
#~ msgstr "Bideo-sarrera"

#~ msgid "AUX 1 In"
#~ msgstr "1. sarrera lagungarria"

#~ msgid "AUX 2 In"
#~ msgstr "2. sarrera lagungarria"

#~ msgid "AUX In"
#~ msgstr "Sarrera lagungarria"

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

#~ msgid "Record Gain"
#~ msgstr "Grabazioaren irabazia"

#~ msgid "Output Gain"
#~ msgstr "Irteeraren irabazia"

#~ msgid "Microphone Boost"
#~ msgstr "Mikrofonoaren bultzada"

#~ msgid "Loopback"
#~ msgstr "Atzera-begizta"

#~ msgid "Diagnostic"
#~ msgstr "Diagnostikoa"

#~ msgid "Bass Boost"
#~ msgstr "Baxuaren bultzada"

#~ msgid "Playback Ports"
#~ msgstr "Erreprodukzioaren atakak"

#~ msgid "Input"
#~ msgstr "Sarrera"

#~ msgid "Record Source"
#~ msgstr "Grabazioaren iturburua"

#~ msgid "Monitor Source"
#~ msgstr "Monitorearen iturburua"

#~ msgid "Keyboard Beep"
#~ msgstr "Teklatuaren soinua"

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

#~ msgid "Simulate Stereo"
#~ msgstr "Simulatu estereoa"

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

#~ msgid "Surround Sound"
#~ msgstr "Soinu inguratzailea"

#~ msgid "Microphone Gain"
#~ msgstr "Mikrofonoaren irabazia"

#~ msgid "Speaker Source"
#~ msgstr "Bozgorailuaren iturburua"

#~ msgid "Microphone Source"
#~ msgstr "Mikrofonoaren iturburua"

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

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

#~ msgid "Stereo Mix"
#~ msgstr "Estereozko nahasketa"

#~ msgid "Mono Mix"
#~ msgstr "Monozko nahasketa"

#~ msgid "Input Mix"
#~ msgstr "Sarrerako nahasketa"

#~ msgid "SPDIF In"
#~ msgstr "SPDIF sarrera"

#~ msgid "SPDIF Out"
#~ msgstr "SPDIF irteera"

#~ msgid "Microphone 1"
#~ msgstr "1. mikrofonoa"

#~ msgid "Microphone 2"
#~ msgstr "2. mikrofonoa"

#~ msgid "Digital Out"
#~ msgstr "Irteera digitala"

#~ msgid "Digital In"
#~ msgstr "Sarrera digitala"

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

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

#~ msgid "Handset"
#~ msgstr "Aurikular+mikrofonoa"

#~ msgid "Other"
#~ msgstr "Bestelakoa"

#~ msgid "None"
#~ msgstr "Bat ere ez"

#~ msgid "On"
#~ msgstr "Piztu"

#~ msgid "Off"
#~ msgstr "Itzali"

#~ msgid "Mute"
#~ msgstr "Mututu"

#~ msgid "Fast"
#~ msgstr "Bizkorra"

#~ msgid "Very Low"
#~ msgstr "Oso motela"

#~ msgid "Low"
#~ msgstr "Motela"

#~ msgid "Medium"
#~ msgstr "Tartekoa"

#~ msgid "High"
#~ msgstr "Altua"

#~ msgid "Very High"
#~ msgstr "Oso altua"

#~ msgid "Production"
#~ msgstr "Ekoizpena"

#~ msgid "Front Panel Microphone"
#~ msgstr "Aurrealdeko paneleko mikrofonoa"

#~ msgid "Front Panel Line In"
#~ msgstr "Aurrealdeko paneleko sarrerako linea"

#~ msgid "Front Panel Headphones"
#~ msgstr "Aurrealdeko paneleko aurikularrak"

#~ msgid "Front Panel Line Out"
#~ msgstr "Aurrealdeko paneleko irteerako linea"

#~ msgid "Green Connector"
#~ msgstr "Konektore berdea"

#~ msgid "Pink Connector"
#~ msgstr "Konektore arrosa"

#~ msgid "Blue Connector"
#~ msgstr "Konektore urdina"

#~ msgid "White Connector"
#~ msgstr "Konektore zuria"

#~ msgid "Black Connector"
#~ msgstr "Konektore beltza"

#~ msgid "Gray Connector"
#~ msgstr "Konektore grisa"

#~ msgid "Orange Connector"
#~ msgstr "Konektore laranja"

#~ msgid "Red Connector"
#~ msgstr "Konektore gorria"

#~ msgid "Yellow Connector"
#~ msgstr "Konektore horia"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Aurrealdeko paneleko konektore berdea"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Aurrealdeko paneleko konektore arrosa"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Aurrealdeko paneleko konektore urdina"

#~ msgid "White Front Panel Connector"
#~ msgstr "Aurrealdeko paneleko konektore zuria"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Aurrealdeko paneleko konektore beltza"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Aurrealdeko paneleko konektore grisa"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Aurrealdeko paneleko konektore laranja"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Aurrealdeko paneleko konektore gorria"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Aurrealdeko paneleko konektore horia"

#~ msgid "Spread Output"
#~ msgstr "Zabaldu irteera"

#~ msgid "Downmix"
#~ msgstr "Tolestu nahasketa"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Nahastaile birtualaren sarrera"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Nahastaile birtualaren irteera"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Nahastaile birtualaren kanalak"

#~ msgid "%s Function"
#~ msgstr "%s funtzioa"

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

#~ msgid ""
#~ "Could not open audio device for playback. Device is being used by another "
#~ "application."
#~ msgstr ""
#~ "Ezin izan da audioaren gailua ireki erreproduzitzeko. Beste aplikazio "
#~ "batek darabil gailua."

#~ msgid ""
#~ "Could not open audio device for playback. You don't have permission to "
#~ "open the device."
#~ msgstr ""
#~ "Ezin izan da audioaren gailua ireki erreproduzitzeko. Ez duzu baimenik "
#~ "gailua irekitzeko."

#~ msgid "Could not open audio device for playback."
#~ msgstr "Ezin izan da audioaren gailua ireki erreproduzitzeko."

#~ msgid ""
#~ "Could not open audio device for playback. This version of the Open Sound "
#~ "System is not supported by this element."
#~ msgstr ""
#~ "Ezin izan da audioaren gailua ireki erreproduzitzeko. Elementu honek ez "
#~ "du onartzen Open Sound System-en bertsio hau."

#~ msgid "Playback is not supported by this audio device."
#~ msgstr "Audio gailu honek ez du erreproduzitzea onartzen."

#~ msgid "Audio playback error."
#~ msgstr "Errorea audioa erreproduzitzean."

#~ msgid "Recording is not supported by this audio device."
#~ msgstr "Audio gailu honek ez du grabatzea onartzen."

#~ msgid "Error recording from audio device."
#~ msgstr "Errorea audioko gailutik grabatzean."

#~| msgid "%s Function"
#~ msgid "%s %d Function"
#~ msgstr "%s %d funtzioa"
