# Slovenian translation for gst-plugins-good.
# This file is distributed under the same license as the gst-plugins-good package.
# Copyright (C) 2005 - 2014 Free Software Foundation, Inc.
#
# Robert Horvat <robi@hipnos.net>, 2010.
# Matej Urbančič <matej.urban@gmail.com>, 2010 - 2011.
# Klemen Košir <klemen913@gmail.com>, 2012 - 2014.
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-1.2.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2014-11-06 12:30+0100\n"
"PO-Revision-Date: 2014-04-09 22:52+0100\n"
"Last-Translator: Klemen Košir <klemen913@gmail.com>\n"
"Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
"Language: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n"
"%100==4 ? 3 : 0);\n"

msgid "Jack server not found"
msgstr "Strežnika JACK ni mogoče najti"

msgid "Failed to decode JPEG image"
msgstr "Napaka med dekodiranjem JPEG slike"

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

msgid "Could not connect to server"
msgstr "Ni se mogoče povezati s strežnikom"

msgid "No URL set."
msgstr "Ni nastavljenega naslova URL."

msgid "Server does not support seeking."
msgstr "Strežnik ne podpira iskanja."

msgid "Could not resolve server name."
msgstr "Ni mogoče razrešiti imena strežnika."

msgid "Could not establish connection to server."
msgstr "Ni mogoče vzpostaviti povezave s strežnikom."

msgid "Secure connection setup failed."
msgstr "Nastavitev varne povezave je spodletela."

msgid ""
"A network error occured, or the server closed the connection unexpectedly."
msgstr ""
"Prišlo je do omrežne napake ali pa je povezava nepričakovano prekinjena."

msgid "Server sent bad data."
msgstr "Strežnik je poslal slabe podatke."

msgid "Internal data stream error."
msgstr "Notranja napaka pretoka podatkov."

msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr "Napaka vhodnega zvoka, AVI pretok bo pokvarjen."

msgid "This file contains no playable streams."
msgstr "Datoteka ne vsebuje pretokov za predvajanje."

msgid "This file is invalid and cannot be played."
msgstr "Datoteka je napačna, zato je ni mogoče predvajati."

msgid "Cannot play stream because it is encrypted with PlayReady DRM."
msgstr "Pretoka ni mogoče predvajati, ker je šifriran s PlayReady DRM."

msgid "This file is corrupt and cannot be played."
msgstr "Datoteka je pokvarjena, zato je ni mogoče predvajati."

msgid "Invalid atom size."
msgstr "Neveljavna velikost atoma."

msgid "This file is incomplete and cannot be played."
msgstr "Datoteka ni popolna, zato je ni mogoče predvajati."

msgid "The video in this file might not play correctly."
msgstr "Video zapis v tej datoteki morda ne bo predvajan pravilno."

#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr "Datoteka vsebuje več pretokov. Predvajano bo le začetnih %d"

msgid ""
"No supported stream was found. You might need to install a GStreamer RTSP "
"extension plugin for Real media streams."
msgstr ""
"Ni mogoče najti podprtega pretoka. Najverjetneje je treba namestiti vstavek "
"GStreamer RTSP razširitve za RealMedia pretoke."

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 ""
"Ni mogoče najti podprtega pretoka. Najverjetneje je treba omogočiti več "
"protokolov prenosa, oziroma manjka ustrezen vstavek GStreamer RTSP "
"razširitve."

msgid "Internal data flow error."
msgstr "Notranja napaka pretoka podatkov."

msgid ""
"Could not open audio device for playback. Device is being used by another "
"application."
msgstr ""
"Ni mogoče odpreti zvočne naprave za predvajanje. Napravo uporablja drug "
"program."

msgid ""
"Could not open audio device for playback. You don't have permission to open "
"the device."
msgstr ""
"Ni mogoče odpreti zvočne naprave za predvajanje. Ni ustreznih dovoljenj za "
"odpiranje naprave."

msgid "Could not open audio device for playback."
msgstr "Ni mogoče odpreti zvočne naprave za predvajanje."

msgid ""
"Could not open audio device for playback. This version of the Open Sound "
"System is not supported by this element."
msgstr ""
"Ni mogoče odpreti zvočne naprave za predvajanje. Open Sound System ni podprt."

msgid "Playback is not supported by this audio device."
msgstr "Predvajane s to zvočno napravo ni podprto."

msgid "Audio playback error."
msgstr "Med predvajanjem zvoka je prišlo do napake."

msgid "Recording is not supported by this audio device."
msgstr "Snemanje s to zvočno napravo ni podprto."

msgid "Error recording from audio device."
msgstr "Napaka med shranjevanjem preko zvočne naprave"

msgid ""
"Could not open audio device for recording. You don't have permission to open "
"the device."
msgstr ""
"Zvočne naprave ni mogoče odpreti za snemanje. Ni ustreznih dovoljenj za "
"odpiranje naprave."

msgid "Could not open audio device for recording."
msgstr "Zvočne naprave ni mogoče odpreti za snemanje."

msgid "Record Source"
msgstr "Vir snemanja"

msgid "Microphone"
msgstr "Mikrofon"

msgid "Line In"
msgstr "Analogni vhod"

msgid "Internal CD"
msgstr "Notranji CD"

msgid "SPDIF In"
msgstr "Vhod SPDIF"

msgid "AUX 1 In"
msgstr "Vhod AUX 1"

msgid "AUX 2 In"
msgstr "Vhod AUX 2"

msgid "Codec Loopback"
msgstr "Povratna zanka kodeka"

msgid "SunVTS Loopback"
msgstr "Povratna zanka SunVTS"

msgid "Volume"
msgstr "Glasnost"

msgid "Gain"
msgstr "Ojačitev"

msgid "Monitor"
msgstr "Zaslon"

msgid "Built-in Speaker"
msgstr "Vgrajeni zvočnik"

msgid "Headphone"
msgstr "Slušalke"

msgid "Line Out"
msgstr "Analogni izhod"

msgid "SPDIF Out"
msgstr "Izhod SPDIF"

msgid "AUX 1 Out"
msgstr "Izhod AUX 1"

msgid "AUX 2 Out"
msgstr "Izhod AUX 2"

#, c-format
msgid "Error reading %d bytes from device '%s'."
msgstr "Napaka med branjem %d bajtov iz naprave '%s'."

#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr ""
"Med številčenjem oblik videa, ki jih podpira naprava \"%s\", je prišlo do "
"napake."

#, c-format
msgid "Could not map buffers from device '%s'"
msgstr "Ni mogoče preslikati medpomnilnika naprave '%s'"

#, c-format
msgid "The driver of device '%s' does not support the IO method %d"
msgstr "Gonilnik naprave \"%s\" ne podpira nobenega načina I/O %d."

#, c-format
msgid "The driver of device '%s' does not support any known IO method."
msgstr "Gonilnik naprave \"%s\" ne podpira nobenega znanega načina I/O."

#, c-format
msgid "Device '%s' does not support video capture"
msgstr "Naprava \"%s\" ne podpira zajemanja videa."

#, c-format
msgid "Device '%s' is busy"
msgstr "Naprava \"%s\" je zaposlena."

#, c-format
msgid "Device '%s' cannot capture at %dx%d"
msgstr "Naprava \"%s\" ne podpira zajemanja v ločljivosti %dx%d."

#, c-format
msgid "Device '%s' cannot capture in the specified format"
msgstr "Naprava \"%s\" ne podpira zajemanja v izbrani obliki."

#, fuzzy, c-format
msgid "Device '%s' does support non-contiguous planes"
msgstr "Naprava \"%s\" ne podpira zajemanja videa."

#, c-format
msgid "Could not get parameters on device '%s'"
msgstr "Ni mogoče pridobiti parametrov na napravi '%s'."

msgid "Video device did not accept new frame rate setting."
msgstr "Napravi ni mogoče določiti novih nastavitev hitrosti sličic."

#, fuzzy
msgid "Video device did not provide output format."
msgstr "Napravi ni mogoče določiti novih nastavitev hitrosti sličic."

msgid "Video device returned invalid dimensions."
msgstr ""

#, fuzzy
msgid "Video devices uses an unsupported interlacing method."
msgstr "Gonilnik naprave \"%s\" ne podpira nobenega načina I/O %d."

msgid "Video devices uses an unsupported pixel format."
msgstr ""

#, fuzzy
msgid "Failed to configure internal buffer pool."
msgstr "Naprava ne more ustvariti zaloge medpomnilnika."

#, fuzzy
msgid "Video device did not suggest any buffer size."
msgstr "Naprava ne more ustvariti zaloge medpomnilnika."

msgid "No downstream pool to import from."
msgstr ""

#, c-format
msgid "Failed to get settings of tuner %d on device '%s'."
msgstr ""
"Med pridobivanjem nastavitev uglaševalnika %d na napravi \"%s\" je prišlo do "
"napake."

#, c-format
msgid "Error getting capabilities for device '%s'."
msgstr "Med pridobivanjem lastnosti naprave \"%s\" je prišlo do napake."

#, c-format
msgid "Device '%s' is not a tuner."
msgstr "Naprava \"%s\" ni uglaševalnik."

#, c-format
msgid "Failed to get radio input on device '%s'. "
msgstr "Med pridobivanjem vhoda na napravi \"%s\" je prišlo do napake."

#, c-format
msgid "Failed to set input %d on device %s."
msgstr "Napaka med določanjem vhoda %d naprave %s."

#, c-format
msgid "Failed to change mute state for device '%s'."
msgstr ""
"Med nastavljanjem stanja glasnosti na napravi \"%s\" je prišlo do napake."

msgid "Failed to allocated required memory."
msgstr ""

msgid "Failed to allocate required memory."
msgstr ""

#, fuzzy, c-format
msgid "Converter on device %s has no supported input format"
msgstr "Gonilnik naprave \"%s\" ne podpira nobenega načina I/O %d."

#, fuzzy, c-format
msgid "Converter on device %s has no supported output format"
msgstr "Napravi ni mogoče določiti novih nastavitev hitrosti sličic."

#, fuzzy, c-format
msgid "Encoder on device %s has no supported input format"
msgstr "Napravi ni mogoče določiti novih nastavitev hitrosti sličic."

#, fuzzy, c-format
msgid "Encoder on device %s has no supported output format"
msgstr "Napravi ni mogoče določiti novih nastavitev hitrosti sličic."

#, fuzzy
msgid "Failed to start decoding thread."
msgstr "Napaka med dekodiranjem JPEG slike"

msgid "Failed to process frame."
msgstr ""

#, c-format
msgid ""
"Error getting capabilities for device '%s': It isn't a v4l2 driver. Check if "
"it is a v4l1 driver."
msgstr ""
"Napaka med pridobivanjem zmožnosti naprave '%s': ni pravega gonilnika v4l2. "
"Preverite namestitev."

#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr "Napaka med pregledovanjem atributov poizvedbe vhoda %d naprave %s"

#, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr "Napaka med pridobivanjem nastavitev uglaševalnika %d na napravi '%s'."

#, c-format
msgid "Failed to query norm on device '%s'."
msgstr "Napaka med poizvedovanjem uravnanosti naprave '%s'."

#, c-format
msgid "Failed getting controls attributes on device '%s'."
msgstr "Napaka med pridobivanjem atributov nadzora naprave '%s'."

#, c-format
msgid "Cannot identify device '%s'."
msgstr "Naprave \"%s\" ni mogoče določiti."

#, c-format
msgid "This isn't a device '%s'."
msgstr "To ni naprava \"%s\"."

#, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "Ni mogoče odpreti naprave '%s' za branje in pisanje."

#, c-format
msgid "Device '%s' is not a capture device."
msgstr "Naprava '%s' ni naprava za zajemanje."

#, c-format
msgid "Device '%s' is not a output device."
msgstr "Naprava '%s' ni izhodna naprava."

#, fuzzy, c-format
msgid "Device '%s' is not a M2M device."
msgstr "Naprava '%s' ni izhodna naprava."

#, fuzzy, c-format
msgid "Could not dup device '%s' for reading and writing."
msgstr "Ni mogoče odpreti naprave '%s' za branje in pisanje."

#, c-format
msgid "Failed to set norm for device '%s'."
msgstr "Med nastavljanjem naprave \"%s\" je prišlo do napake."

#, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr "Napaka med pridobivanjem frekvence uglaševalnika naprave '%s'."

#, c-format
msgid "Failed to set current tuner frequency for device '%s' to %lu Hz."
msgstr ""
"Napaka med nastavljanjem frekvence uglaševalnika naprave '%s' na %lu Hz.."

#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr "Napaka med pridobivanjem moči signala za napravo '%s'."

#, c-format
msgid "Failed to get value for control %d on device '%s'."
msgstr "Napaka med pridobivanjem vrednosti %d na napravi '%s'."

#, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr "Napaka med določanjem vrednosti %d za %d na napravi '%s'."

#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr ""
"Napaka med pridobivanjem vhodnega signala naprave '%s'. Morda je radijska "
"naprava."

#, c-format
msgid ""
"Failed to get current output on device '%s'. May be it is a radio device"
msgstr ""
"Napaka med pridobivanjem odvodnega signala naprave '%s'. Morda je radijska "
"naprava."

#, c-format
msgid "Failed to set output %d on device %s."
msgstr "Napaka med določanjem odvoda %d naprave %s."

msgid "Changing resolution at runtime is not yet supported."
msgstr "Spreminjanje ločljivosti med delovanjem še ni podprto."

msgid "Cannot operate without a clock"
msgstr "Izvajanje opravil brez ure ni mogoče"
