# translation of sk.po to
# Czech translations of gst-plugins.
# Copyright (C) 2004 gst-plugins' COPYRIGHT HOLDER
# This file is put in the public domain.
# Peter Tuhársky <tuharsky@misbb.sk>, 2007, 2008, 2009, 2010, 2014, 2016.
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-bad 1.7.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2016-09-30 12:19+0300\n"
"PO-Revision-Date: 2016-05-20 12:33+0100\n"
"Last-Translator: Peter Tuhársky <tuharsky@misbb.sk>\n"
"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
"Language: sk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Poedit 1.6.10\n"

msgid "failed to draw pattern"
msgstr ""

msgid "A GL error occured"
msgstr ""

msgid "format wasn't negotiated before get function"
msgstr "formát nebol dohodnutý pred funkciou stiahnutia"

msgid "OpenCV failed to load template image"
msgstr "OpenCV nedokázalo načítať obrazovú šablónu"

msgid "Could not read title information for DVD."
msgstr "Nepodarilo sa prečítať titulok DVD."

#, c-format
msgid "Failed to open DVD device '%s'."
msgstr "Nepodarilo sa otvoriť zariadenie DVD '%s'."

msgid "Failed to set PGC based seeking."
msgstr "Nepodarilo sa nastaviť PGC posun pozície."

msgid ""
"Could not read DVD. This may be because the DVD is encrypted and a DVD "
"decryption library is not installed."
msgstr ""
"Nepodarilo sa čítať DVD. Možno je DVD šifrované a dešifrovacia knižnica nie "
"je nainštalovaná."

msgid "Could not read DVD."
msgstr "Nepodarilo sa prečítať DVD."

msgid "This file contains no playable streams."
msgstr "Tento súbor neobsahuje prehrateľné prúdy údajov."

msgid "Could not open sndfile stream for reading."
msgstr "Nepodarilo sa otvoriť prúd údajov na čítanie."

msgid "Could not establish connection to sndio"
msgstr "Nepodarilo sa pripojiť na sndio"

msgid "Failed to query sndio capabilities"
msgstr "Nepodarilo sa zistiť schopnosti sndio"

msgid "Could not configure sndio"
msgstr "Nepodarilo nastaviť sndio"

msgid "Could not start sndio"
msgstr "Nepodarilo sa spustiť sndio"

msgid "Generated file has a larger preroll time than its streams duration"
msgstr ""
"Vytvorený súbor má väčší prerolovací čas než je trvanie jeho prúdu údajov"

#, c-format
msgid "Missing element '%s' - check your GStreamer installation."
msgstr "Chýba prvok '%s' - skontrolujte si svoju inštaláciu GStreamer."

msgid "File location is set to NULL, please set it to a valid filename"
msgstr ""
"Umiestnenie súboru je nastavené na NULOVÉ, prosím nastavte platný názov "
"súboru"

msgid "Digitalzoom element couldn't be created"
msgstr "Prvok digitálneho priblíženia sa nepodarilo vytvoriť"

msgid "Subpicture format was not configured before data flow"
msgstr "Formát podobrázku nebol nastavený pred prúdom údajov."

msgid "Failed to get fragment URL."
msgstr "Nepodarilo sa získať URL fragmentu."

msgid "Couldn't download fragments"
msgstr "Nepodarilo sa získať fragmenty"

msgid "Internal data stream error."
msgstr "Vnútorná chyba prúdu údajov."

msgid "No file name specified for writing."
msgstr "Nebolo zadané žiadne meno súboru pre zápis."

#, c-format
msgid "Given file name \"%s\" can't be converted to local file name encoding."
msgstr ""
"Zadaný názov súboru \"%s\" sa nedá previesť na miestne kódovanie názvu "
"súboru."

#, c-format
msgid "Could not open file \"%s\" for writing."
msgstr "Nepodarilo sa otvoriť súbor \"%s\" pre zápis."

#, c-format
msgid "Device \"%s\" does not exist."
msgstr "Zariadenie \"%s\" neexistuje."

#, c-format
msgid "Could not open frontend device \"%s\"."
msgstr "Nepodarilo sa otvoriť ovládacie zariadenie \"%s\"."

#, c-format
msgid "Could not get settings from frontend device \"%s\"."
msgstr "Nepodarilo sa získať nastavenia od zariadenia \"%s\"."

#, c-format
msgid "Cannot enumerate delivery systems from frontend device \"%s\"."
msgstr "Nepodarilo sa získať nastavenia od zariadenia \"%s\"."

#, c-format
msgid "Could not open file \"%s\" for reading."
msgstr "Nepodarilo sa otvoriť súbor \"%s\" na čítanie."

msgid "Couldn't find DVB channel configuration file"
msgstr "Nepodarilo sa nájsť konfiguračný súbor DVB kanálu"

#, c-format
msgid "Couldn't load DVB channel configuration file: %s"
msgstr "Nepodarilo sa načítať konfiguračný súbor DVB kanálu: %s"

#, c-format
msgid "Couldn't find details for DVB channel %s"
msgstr "Nepodarilo sa nájsť podrobnosti o DVB kanáli %s"

#, fuzzy, c-format
msgid "No properties for the DVB channel %s"
msgstr "Nepodarilo sa nájsť podrobnosti o DVB kanáli %s"

#, fuzzy, c-format
msgid "Failed to set properties for the DVB channel %s"
msgstr "Nepodarilo sa nájsť podrobnosti o DVB kanáli %s"

#, fuzzy, c-format
msgid "Couldn't find DVB channel configuration file: %s"
msgstr "Nepodarilo sa nájsť konfiguračný súbor DVB kanálu"

msgid "DVB channel configuration file doesn't contain any channels"
msgstr "Konfiguračný súbor DVB kanála neobsahuje žiadne kanály"

#~ msgid "Internal data flow error."
#~ msgstr "Vnútorná chyba prúdu údajov."

#~ msgid "Couldn't get the Manifest's URI"
#~ msgstr "Nepodarilo sa získať URI Manifestu"

#~ msgid "Could not write to file \"%s\"."
#~ msgstr "Nepodarilo sa zapísať do súboru \"%s\"."

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr ""
#~ "Nepodarilo sa otvoriť zvukové zariadenie pre obsluhu ovládania mixéra."

#~ msgid ""
#~ "Could not open audio device for mixer control handling. This version of "
#~ "the Open Sound System is not supported by this element."
#~ msgstr ""
#~ "Nepodarilo sa otvoriť zvukové zariadenie pre obsluhu ovládania mixéra. "
#~ "Táto verzia Open Sound System nie je podporovaná týmto prvkom."

#~ msgid "Volume"
#~ msgstr "Hlasitosť"

#~ msgid "Master"
#~ msgstr "Hlavné"

#~ msgid "Front"
#~ msgstr "Predné"

#~ msgid "Rear"
#~ msgstr "Zadné"

#~ msgid "Headphones"
#~ msgstr "Slúchadlá"

#~ msgid "Center"
#~ msgstr "Stredné"

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

#~ msgid "Surround"
#~ msgstr "Priestorové"

#~ msgid "Side"
#~ msgstr "Postranné"

#~ msgid "Built-in Speaker"
#~ msgstr "Zabudovaný reproduktor"

#~ msgid "AUX 1 Out"
#~ msgstr "AUX 1 výstup"

#~ msgid "AUX 2 Out"
#~ msgstr "AUX 2 výstup"

#~ msgid "AUX Out"
#~ msgstr "AUX výstup"

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

#~ msgid "Treble"
#~ msgstr "Výšky"

#~ msgid "3D Depth"
#~ msgstr "3D hĺbka"

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

#~ msgid "3D Enhance"
#~ msgstr "3D vylepšenie"

#~ msgid "Telephone"
#~ msgstr "TelefónSlúchadlá"

#~ msgid "Microphone"
#~ msgstr "Mikrofón"

#~ msgid "Line Out"
#~ msgstr "Linkový výstup"

#~ msgid "Line In"
#~ msgstr "Linkový vstup"

#~ msgid "Internal CD"
#~ msgstr "Vnútorne CD"

#~ msgid "Video In"
#~ msgstr "Video vstup"

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

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

#~ msgid "AUX In"
#~ msgstr "AUX vstup"

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

#~ msgid "Record Gain"
#~ msgstr "Zisk záznamu"

#~ msgid "Output Gain"
#~ msgstr "Zisk výstupu"

#~ msgid "Microphone Boost"
#~ msgstr "Zosilnenie mikrofónu"

#~ msgid "Loopback"
#~ msgstr "Spätná väzba"

#~ msgid "Diagnostic"
#~ msgstr "Diagnostika"

#~ msgid "Bass Boost"
#~ msgstr "Zosilnenie basov"

#~ msgid "Playback Ports"
#~ msgstr "Prehrávacie porty"

#~ msgid "Input"
#~ msgstr "Vstup"

#~ msgid "Record Source"
#~ msgstr "Zdroj záznamu"

#~ msgid "Monitor Source"
#~ msgstr "Zdroj monitora"

#~ msgid "Keyboard Beep"
#~ msgstr "Pípanie klávesnice"

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

#~ msgid "Simulate Stereo"
#~ msgstr "Napodobniť stereo"

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

#~ msgid "Surround Sound"
#~ msgstr "Priestorový zvuk"

#~ msgid "Microphone Gain"
#~ msgstr "Zisk mikrofónu"

#~ msgid "Speaker Source"
#~ msgstr "Zdroj reproduktora"

#~ msgid "Microphone Source"
#~ msgstr "Zdroj mikrofónu"

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

#~ msgid "Center / LFE"
#~ msgstr "Stredné / LFE"

#~ msgid "Stereo Mix"
#~ msgstr "Stereo mix"

#~ msgid "Mono Mix"
#~ msgstr "Mono mix"

#~ msgid "Input Mix"
#~ msgstr "Vstupný mix"

#~ msgid "SPDIF In"
#~ msgstr "SPDIF vstup"

#~ msgid "SPDIF Out"
#~ msgstr "SPDIF výstup"

#~ msgid "Microphone 1"
#~ msgstr "Mikrofón 1"

#~ msgid "Microphone 2"
#~ msgstr "Mikrofón 2"

#~ msgid "Digital Out"
#~ msgstr "Digitálny výstup"

#~ msgid "Digital In"
#~ msgstr "Digitálny vstup"

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

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

#~ msgid "Other"
#~ msgstr "Iné"

#~ msgid "None"
#~ msgstr "Žiadne"

#~ msgid "On"
#~ msgstr "Zap"

#~ msgid "Off"
#~ msgstr "Vyp"

#~ msgid "Mute"
#~ msgstr "Potichu"

#~ msgid "Fast"
#~ msgstr "Rýchla"

#~ msgid "Very Low"
#~ msgstr "Veľmi nízka"

#~ msgid "Low"
#~ msgstr "Nízka"

#~ msgid "Medium"
#~ msgstr "Stredná"

#~ msgid "High"
#~ msgstr "Vysoká"

#~ msgid "Very High"
#~ msgstr "Veľmi vysoká"

#~ msgid "Production"
#~ msgstr "Produkčná"

#~ msgid "Front Panel Microphone"
#~ msgstr "Mikrofón na prednom paneli"

#~ msgid "Front Panel Line In"
#~ msgstr "Linkový vstup na prednom paneli"

#~ msgid "Front Panel Headphones"
#~ msgstr "Slúchadlá na prednom paneli"

#~ msgid "Front Panel Line Out"
#~ msgstr "Linkový výstup na prednom paneli"

#~ msgid "Green Connector"
#~ msgstr "Zelený konektor"

#~ msgid "Pink Connector"
#~ msgstr "Ružový konektor"

#~ msgid "Blue Connector"
#~ msgstr "Modrý konektor"

#~ msgid "White Connector"
#~ msgstr "Biely konektor"

#~ msgid "Black Connector"
#~ msgstr "Čierny konektor"

#~ msgid "Gray Connector"
#~ msgstr "Šedý konektor"

#~ msgid "Orange Connector"
#~ msgstr "Oranžový konektor"

#~ msgid "Red Connector"
#~ msgstr "Červený konektor"

#~ msgid "Yellow Connector"
#~ msgstr "Žltý konektor"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Zelený konektor na prednom paneli"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Ružový konektor na prednom paneli"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Modrý konektor na prednom paneli"

#~ msgid "White Front Panel Connector"
#~ msgstr "Biely konektor na prednom paneli"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Čierny konektor na prednom paneli"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Šedý konektor na prednom paneli"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Oranžový konektor na prednom paneli"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Červený konektor na prednom paneli"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Žltý konektor na prednom paneli"

#~ msgid "Downmix"
#~ msgstr "Zmixovať"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Vstup virtuálneho mixéra"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Výstup virtuálneho mixéra"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Kanály virtuálneho mixéra"

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

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

#~ msgid ""
#~ "Could not open audio device for playback. Device is being used by another "
#~ "application."
#~ msgstr ""
#~ "Nepodarilo sa otvoriť zvukové zariadenie v režime prehrávania. Zariadenie "
#~ "už používa iná aplikácia."

#~ msgid ""
#~ "Could not open audio device for playback. You don't have permission to "
#~ "open the device."
#~ msgstr ""
#~ "Nepodarilo sa otvoriť zvukové zariadenie v režime prehrávania. Nemáte "
#~ "oprávnenie na otvorenie tohto zariadenia."

#~ msgid "Could not open audio device for playback."
#~ msgstr "Nepodarilo sa otvoriť zvukové zariadenie v režime prehrávania."

#~ msgid ""
#~ "Could not open audio device for playback. This version of the Open Sound "
#~ "System is not supported by this element."
#~ msgstr ""
#~ "Nepodarilo sa otvoriť zvukové zariadenie v režime prehrávania. Túto "
#~ "verziu Open Sound System nepodporuje tento prvok."

#~ msgid "Playback is not supported by this audio device."
#~ msgstr "Toto zvukové zariadenie nepodporuje prehrávanie."

#~ msgid "Audio playback error."
#~ msgstr "Chyba prehrávania zvuku."

#~ msgid "Recording is not supported by this audio device."
#~ msgstr "Toto zvukové zariadenie nepodporuje záznam."

#~ msgid "Error recording from audio device."
#~ msgstr "Chyba pri zázname zo zvukového zariadenia."

#~ msgid "Internal clock error."
#~ msgstr "Vnútorná chyba časovača."

#~ msgid "Failed to configure TwoLAME encoder. Check your encoding parameters."
#~ msgstr ""
#~ "Nepodarilo sa nakonfigurovať TwoLAME enkodér. Skontrolujte parametre "
#~ "kódovania."

#~ msgid ""
#~ "The requested bitrate %d kbit/s for property '%s' is not allowed. The "
#~ "bitrate was changed to %d kbit/s."
#~ msgstr ""
#~ "Požadovaná bitová rýchlosť %d kbit/s pre vlastnosť '%s' nie je povolená. "
#~ "Rýchlosť bola zmenená na %d kbit/s."

#~ 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 "Funkcia zeleného konektora"

#~ msgid "Green front panel connector function"
#~ msgstr "Funkcia zeleného konektora na prednom paneli"

#~ msgid "Pink connector function"
#~ msgstr "Funkcia ružového konektora"

#~ msgid "Pink front panel connector function"
#~ msgstr "Funkcia ružového konektora na prednom paneli"

#~ msgid "Blue connector function"
#~ msgstr "Funkcia modrého konektora"

#~ msgid "Blue front panel connector function"
#~ msgstr "Funkcia modrého konektora na prednom paneli"

#~ msgid "Orange connector function"
#~ msgstr "Funkcia oranžového konektora"

#~ msgid "Orange front panel connector function"
#~ msgstr "Funkcia oranžového konektora na prednom paneli"

#~ msgid "Black connector function"
#~ msgstr "Funkcia čierneho konektora"

#~ msgid "Black front panel connector function"
#~ msgstr "Funkcia čierneho konektora na prednom paneli"

#~ msgid "Gray connector function"
#~ msgstr "Funkcia šedého konektora"

#~ msgid "Gray front panel connector function"
#~ msgstr "Funkcia šedého konektora na prednom paneli"

#~ msgid "White connector function"
#~ msgstr "Funkcia bieleho konektora"

#~ msgid "White front panel connector function"
#~ msgstr "Funkcia bieleho konektora na prednom paneli"

#~ msgid "Red connector function"
#~ msgstr "Funkcia červeného konektora"

#~ msgid "Red front panel connector function"
#~ msgstr "Funkcia červeného konektora na prednom paneli"

#~ msgid "Yellow connector function"
#~ msgstr "Funkcia žltého konektora"

#~ msgid "Yellow front panel connector function"
#~ msgstr "Funkcia žltého konektora na prednom paneli"
