# 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: 2017-05-04 15:05+0300\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 "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."

#, fuzzy
msgid ""
"A network error occurred, 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 "Server does not support seeking."
msgstr "Strežnik ne podpira iskanja."

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 ""
"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 "CoreAudio device not found"
msgstr ""

msgid "CoreAudio device could not be opened"
msgstr ""

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' 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 device uses an unsupported interlacing method."
msgstr "Gonilnik naprave \"%s\" ne podpira nobenega načina I/O %d."

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

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

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

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

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