# Latvian translation of gst-plugins.
# This file is put in the public domain.
#
# Arvis Lācis <arvis.lacis@inbox.lv>, 2009.
# Rihards Prieditis <rprieditis@gmail.com>, 2010.
# Rihards Prieditis <rprieditis@gmail.com>, 2011.
# Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>, 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: 2016-11-29 15:32+0200\n"
"PO-Revision-Date: 2014-04-20 16:38+0300\n"
"Last-Translator: Rihards Prieditis <rprieditis@gmail.com>\n"
"Language-Team: Latvian <translation-team-lv@lists.sourceforge.net>\n"
"Language: lv\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 != 0 ? 1 : "
"2);\n"
"X-Generator: Lokalize 1.5\n"

msgid "Jack server not found"
msgstr "Nav atrasts Jack serveris"

msgid "Failed to decode JPEG image"
msgstr "Neizdevās atkodēt JPEG attēlu"

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

msgid "Could not connect to server"
msgstr "Nevarēja savienoties ar serveri"

msgid "No URL set."
msgstr "URL nav iestatīts."

msgid "Corrupted HTTP response."
msgstr ""

msgid "Server does not support seeking."
msgstr "Serveris neatbalsta meklēšanu."

msgid "Could not resolve server name."
msgstr "Nevar atrast servera nosaukumu."

msgid "Could not establish connection to server."
msgstr "Nevar izveidot savienojumu ar serveri."

msgid "Secure connection setup failed."
msgstr "Neizdevās izveidot drošo savienojumu."

#, fuzzy
msgid ""
"A network error occurred, or the server closed the connection unexpectedly."
msgstr "Notika tīkla kļūda, vai serveris negaidīti aizvēra savienojumu."

msgid "Server sent bad data."
msgstr "Serveris nosūtīja sliktus datus."

msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr "Nav vai nederīgs ievades audio, AVI straume tiks bojāta."

msgid "This file contains no playable streams."
msgstr "Šī datne nesatur nevienu atskaņojamu straumi."

msgid "This file is invalid and cannot be played."
msgstr "Šī datne ir nederīga un to nevar atskaņot."

msgid "Cannot play stream because it is encrypted with PlayReady DRM."
msgstr "Nevar atskaņot straumi, jo tā ir šifrēta ar PlayReady DRM."

msgid "This file is corrupt and cannot be played."
msgstr "Šī datne ir bojāta un to nevar atskaņot."

msgid "Invalid atom size."
msgstr "Nederīgs atoma izmērs."

msgid "This file is incomplete and cannot be played."
msgstr "Šī datne ir nepabeigta un to nevar atskaņot."

msgid "The video in this file might not play correctly."
msgstr "Video šajā datnē varētu tikt atskaņots nepareizi."

#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr "Šī datne satur pārāk daudz straumju. Tiek atskaņota tikai pirmā %d"

msgid ""
"No supported stream was found. You might need to install a GStreamer RTSP "
"extension plugin for Real media streams."
msgstr ""
"Netika atrasta atbalstīta straume. Iespējams, jums jāinstalē GStreamer RTSP "
"paplašinājuma spraudni Real media straumēm."

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 ""
"Netika atrasta atbalstīta straume. Iespējams, jums jāatļauj vairāk "
"transporta protokoli vai arī trūkst GStreamer RTSP paplašinājuma spraudnis. "

msgid ""
"Could not open audio device for playback. Device is being used by another "
"application."
msgstr ""
"Nevarēja atvērt audio ierīci atskaņošanai. Ierīci pašlaik izmanto cita "
"lietotne."

msgid ""
"Could not open audio device for playback. You don't have permission to open "
"the device."
msgstr ""
"Nevar atvērt audio ierīci atskaņošanai. Jums nav nepieciešamās atļaujas, lai "
"atvērtu ierīci."

msgid "Could not open audio device for playback."
msgstr "Nevarēja atvērt audio ierīci atskaņošanai."

msgid ""
"Could not open audio device for playback. This version of the Open Sound "
"System is not supported by this element."
msgstr ""
"Nevar atvērt audio ierīci atskaņošanai. Šī Atvērtās Skaņas Sistēmas versija "
"neatbalsta šo elementu."

msgid "Playback is not supported by this audio device."
msgstr "Šī audio ierīce neatbalsta atskaņošanu."

msgid "Audio playback error."
msgstr "Audio atskaņošanas kļūda."

msgid "Recording is not supported by this audio device."
msgstr "Šī audio ierīce neatbalsta ierakstīšanu."

msgid "Error recording from audio device."
msgstr "Kļūda, ierakstot no audio ierīces."

msgid ""
"Could not open audio device for recording. You don't have permission to open "
"the device."
msgstr ""
"Nevar atvērt audio ierīci ierakstīšanai. Jums nav nepieciešamo piekļuves "
"tiesību, lai atvērtu ierīci."

msgid "Could not open audio device for recording."
msgstr "Nevarēja atvērt audio ierīci ierakstīšanai."

msgid "CoreAudio device not found"
msgstr ""

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

msgid "Record Source"
msgstr "Ierakstīšanas avots"

msgid "Microphone"
msgstr "Mikrofons"

msgid "Line In"
msgstr "Skaņas ieeja"

msgid "Internal CD"
msgstr "Iekšējais CD"

msgid "SPDIF In"
msgstr "SPDIF ieeja"

msgid "AUX 1 In"
msgstr "AUX 1 ieeja"

msgid "AUX 2 In"
msgstr "AUX 2 ieeja"

msgid "Codec Loopback"
msgstr "Kodeka atgriezeniskais cikls"

msgid "SunVTS Loopback"
msgstr "SunVTS atgriezeniskais cikls"

msgid "Volume"
msgstr "Skaļums"

msgid "Gain"
msgstr "Pieaugums"

msgid "Monitor"
msgstr "Monitors"

msgid "Built-in Speaker"
msgstr "Iebūvētais skaļrunis"

msgid "Headphone"
msgstr "Austiņas"

msgid "Line Out"
msgstr "Skaņas izeja"

msgid "SPDIF Out"
msgstr "SPDIF izeja"

msgid "AUX 1 Out"
msgstr "AUX 1 izeja"

msgid "AUX 2 Out"
msgstr "AUX 2 izeja"

#, c-format
msgid "Error reading %d bytes from device '%s'."
msgstr "Radās kļūda, nolasot %d baitus no ierīces “%s”."

#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr "Neizdevās uzskaitīt iespējamos video formātus, ar ko var strādāt “%s”"

#, c-format
msgid "Could not map buffers from device '%s'"
msgstr "Nevar izvietot buferus no ierīces “%s”"

#, c-format
msgid "The driver of device '%s' does not support the IO method %d"
msgstr "Ierīces \"%s\" draiveris neatbalsta IO metodi %d"

#, c-format
msgid "The driver of device '%s' does not support any known IO method."
msgstr "Ierīces “%s” draiveris neatbalsta nevienu zināmo ierakstīšanas metodi."

#, c-format
msgid "Device '%s' is busy"
msgstr "Ierīce “%s” ir aizņemta"

#, c-format
msgid "Device '%s' cannot capture at %dx%d"
msgstr "Ierīce “%s” nevar tvert ar %dx%d"

#, c-format
msgid "Device '%s' cannot capture in the specified format"
msgstr "Ierīce “%s” nevar tvert norādītajā formātā"

#, fuzzy, c-format
msgid "Device '%s' does support non-contiguous planes"
msgstr "Ierīce “%s” neatbalsta video tveršanu"

#, c-format
msgid "Could not get parameters on device '%s'"
msgstr "Nevar nolasīt parametrus no ierīces “%s”"

msgid "Video device did not accept new frame rate setting."
msgstr "Video ierīce nepieņēma jaunos kadru ātruma iestatījumus."

#, fuzzy
msgid "Video device did not provide output format."
msgstr "Video ierīce nepieņēma jaunos kadru ātruma iestatījumus."

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

#, fuzzy
msgid "Video devices uses an unsupported interlacing method."
msgstr "Ierīces \"%s\" draiveris neatbalsta IO metodi %d"

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

#, fuzzy
msgid "Failed to configure internal buffer pool."
msgstr "Video ierīce nevarēja izveidot bufera pūlu."

#, fuzzy
msgid "Video device did not suggest any buffer size."
msgstr "Video ierīce nevarēja izveidot bufera pūlu."

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

#, c-format
msgid "Failed to get settings of tuner %d on device '%s'."
msgstr "Neizdevās saņemt skaņotāja %d iestatījumus no ierīces “%s”."

#, c-format
msgid "Error getting capabilities for device '%s'."
msgstr "Kļūda, saņemot iespējas no ierīces “%s”."

#, c-format
msgid "Device '%s' is not a tuner."
msgstr "Ierīce “%s” nav skaņotājs."

#, c-format
msgid "Failed to get radio input on device '%s'. "
msgstr "Neizdevās saņemt radio ievadi uz ierīces “%s”."

#, c-format
msgid "Failed to set input %d on device %s."
msgstr "Neizdevās iestatīt ievadi %d uz ierīces %s."

#, c-format
msgid "Failed to change mute state for device '%s'."
msgstr "Neizdevās mainīt apklusināšanas stāvokli ierīcei “%s”."

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 "Ierīces \"%s\" draiveris neatbalsta IO metodi %d"

#, fuzzy, c-format
msgid "Converter on device %s has no supported output format"
msgstr "Video ierīce nepieņēma jaunos kadru ātruma iestatījumus."

#, fuzzy, c-format
msgid "Encoder on device %s has no supported input format"
msgstr "Video ierīce nepieņēma jaunos kadru ātruma iestatījumus."

#, fuzzy, c-format
msgid "Encoder on device %s has no supported output format"
msgstr "Video ierīce nepieņēma jaunos kadru ātruma iestatījumus."

#, fuzzy
msgid "Failed to start decoding thread."
msgstr "Neizdevās atkodēt JPEG attēlu"

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 ""
"Radās kļūda, saņemot ierīces “%s” iespējas: iespējams tas nav v4I2 "
"draiveris. Pārbaudiet vai tas ir v4I1 draiveris."

#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr "Neizdevās noteikt atribūtus ievadei %d no ierīces %s"

#, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr "Neizdevās saņemt skaņotāja %d iestatījumus no ierīces “%s”."

#, c-format
msgid "Failed to query norm on device '%s'."
msgstr "Neizdevās noskaidrot normu ierīcei “%s”."

#, c-format
msgid "Failed getting controls attributes on device '%s'."
msgstr "Neizdevās iegūt kontroles atribūtus ierīcei “%s”."

#, c-format
msgid "Cannot identify device '%s'."
msgstr "Nevar atpazīt ierīci “%s”."

#, c-format
msgid "This isn't a device '%s'."
msgstr "Šī nav ierīce “%s”."

#, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "Nevarēja atvērt ierīci “%s” lasīšanai vai rakstīšanai."

#, c-format
msgid "Device '%s' is not a capture device."
msgstr "Ierīce “%s” nav ierakstīšanas ierīce."

#, c-format
msgid "Device '%s' is not a output device."
msgstr "Ierīce “%s” nav izvades ierīce."

#, fuzzy, c-format
msgid "Device '%s' is not a M2M device."
msgstr "Ierīce “%s” nav izvades ierīce."

#, fuzzy, c-format
msgid "Could not dup device '%s' for reading and writing."
msgstr "Nevarēja atvērt ierīci “%s” lasīšanai vai rakstīšanai."

#, c-format
msgid "Failed to set norm for device '%s'."
msgstr "Neizdevās iestatīt normu ierīcei “%s”."

#, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr "Neizdevās saņemt pašreizējo atskaņošanas frekvenci no ierīces “%s”."

#, c-format
msgid "Failed to set current tuner frequency for device '%s' to %lu Hz."
msgstr ""
"Neizdevās iestatīt ierīces “%s” pašreizējo skaņotāja frekvenci uz %lu Hz."

#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr "Neizdevās saņemt signāla stiprumu no ierīces “%s”."

#, c-format
msgid "Failed to get value for control %d on device '%s'."
msgstr "Neizdevās saņemt vadīklas vērtību %d ierīcei “%s”."

#, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr "Neizdevās iestatīt vērtību %d vadīklai %d no ierīces “%s”."

#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr ""
"Neizdevās saņemt pašreizējo ievadi no ierīces “%s”. Iespējams tā ir radio "
"ierīce"

#, c-format
msgid ""
"Failed to get current output on device '%s'. May be it is a radio device"
msgstr ""
"Neizdevās saņemt pašreizējo izvadu no ierīces “%s”. Iespējams tā ir radio "
"ierīce"

#, c-format
msgid "Failed to set output %d on device %s."
msgstr "Neizdevās iestatīt izvadi %d uz ierīces %s."

msgid "Changing resolution at runtime is not yet supported."
msgstr "Izšķirtspējas mainīšana izpildlaikā pašlaik netiek atbalstīta."

msgid "Cannot operate without a clock"
msgstr "Nevar veikt darbības bez pulksteņa"

#~ msgid "Internal data stream error."
#~ msgstr "Iekšēja datu plūsmas kļūda."

#~ msgid "Internal data flow error."
#~ msgstr "Iekšēja datu plūsmas kļūda."

#~ msgid "Device '%s' does not support video capture"
#~ msgstr "Ierīce “%s” neatbalsta video tveršanu"

#~ msgid "Could not establish connection to sound server"
#~ msgstr "Nevar izveidot savienojumu ar skaņas serveri"

#~ msgid "Failed to query sound server capabilities"
#~ msgstr "Neizdevās noskaidrot skaņas servera iespējas"

#~ msgid "Bass"
#~ msgstr "Basi"

#~ msgid "Treble"
#~ msgstr "Diskants"

#~ msgid "Synth"
#~ msgstr "Sintēze"

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

#~ msgid "Speaker"
#~ msgstr "Skaļrunis"

#~ msgid "Line-in"
#~ msgstr "Skaņas ieeja"

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

#~ msgid "Mixer"
#~ msgstr "Jaucējs"

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

#~ msgid "Record"
#~ msgstr "Ierakstīt"

#~ msgid "In-gain"
#~ msgstr "Ievades pieaugums"

#~ msgid "Out-gain"
#~ msgstr "Izvades pieaugums"

#~ msgid "Line-1"
#~ msgstr "Līnija-1"

#~ msgid "Line-2"
#~ msgstr "Līnija-2"

#~ msgid "Line-3"
#~ msgstr "Līnija-3"

#~ msgid "Digital-1"
#~ msgstr "Digitālais-1"

#~ msgid "Digital-2"
#~ msgstr "Digitālais-2"

#~ msgid "Digital-3"
#~ msgstr "Digitālais-3"

#~ msgid "Phone-in"
#~ msgstr "Telefona ievade"

#~ msgid "Phone-out"
#~ msgstr "Telefona izvade"

#~ msgid "Video"
#~ msgstr "Video"

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

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr "Nevarēja atvērt audio ierīci miksera kontroles vadīšanai."

#~ msgid ""
#~ "Could not open audio device for mixer control handling. This version of "
#~ "the Open Sound System is not supported by this element."
#~ msgstr ""
#~ "Nevar atvērt audio ierīci miksera kontrolas vadīšanai. Šī Atvertās Skaņas "
#~ "Sistemas versija neatbalsta šo elementu."

#~ msgid "Master"
#~ msgstr "Galvenais"

#~ msgid "Front"
#~ msgstr "Priekšējais"

#~ msgid "Rear"
#~ msgstr "Sāni"

#~ msgid "Headphones"
#~ msgstr "Austiņas"

#~ msgid "Center"
#~ msgstr "Centrs"

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

#~ msgid "Surround"
#~ msgstr "Ieskaujošā"

#~ msgid "Side"
#~ msgstr "Puse"

#~ msgid "AUX Out"
#~ msgstr "AUX izeja"

#~ msgid "3D Depth"
#~ msgstr "3D dziļums"

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

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

#~ msgid "Telephone"
#~ msgstr "Telefons"

#~ msgid "Video In"
#~ msgstr "Video ieeja"

#~ msgid "AUX In"
#~ msgstr "AUC ieeja"

#~ msgid "Record Gain"
#~ msgstr "Ierakstīta pieaugums"

#~ msgid "Output Gain"
#~ msgstr "Izvada pieaugums"

#~ msgid "Microphone Boost"
#~ msgstr "Mikrofona pastiprinājums"

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

#~ msgid "Bass Boost"
#~ msgstr "Bassa pastiprinājums"

#~ msgid "Playback Ports"
#~ msgstr "Atskaņošanas porti"

#~ msgid "Input"
#~ msgstr "Ievads"

#~ msgid "Monitor Source"
#~ msgstr "Monitora avots"

#~ msgid "Keyboard Beep"
#~ msgstr "Klaviatūras pīkstieni"

#~ msgid "Simulate Stereo"
#~ msgstr "Simulēt stereo"

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

#~ msgid "Surround Sound"
#~ msgstr "Ieskaujošā skaņa"

#~ msgid "Microphone Gain"
#~ msgstr "Mikrofona pieaugums"

#~ msgid "Speaker Source"
#~ msgstr "Skaļruņa avots"

#~ msgid "Microphone Source"
#~ msgstr "Mikrofona avots"

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

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

#~ msgid "Stereo Mix"
#~ msgstr "Stereo mikseris"

#~ msgid "Mono Mix"
#~ msgstr "Mono miskeris"

#~ msgid "Input Mix"
#~ msgstr "Ieejas mikseris"

#~ msgid "Microphone 1"
#~ msgstr "Mikrofons 1"

#~ msgid "Microphone 2"
#~ msgstr "Mikrofons 2"

#~ msgid "Digital Out"
#~ msgstr "Digitālā izeja"

#~ msgid "Digital In"
#~ msgstr "Digitālā ieeja"

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

#~ msgid "Modem"
#~ msgstr "Modēms"

#~ msgid "Handset"
#~ msgstr "Klausule"

#~ msgid "Other"
#~ msgstr "Cits"

#~ msgid "None"
#~ msgstr "Nekas"

#~ msgid "On"
#~ msgstr "Ieslēgts"

#~ msgid "Off"
#~ msgstr "Izslēgts"

#~ msgid "Mute"
#~ msgstr "Klusums"

#~ msgid "Fast"
#~ msgstr "Ātrs"

#~ msgid "Very Low"
#~ msgstr "Ļoti zems"

#~ msgid "Low"
#~ msgstr "Zems"

#~ msgid "Medium"
#~ msgstr "Vidējs"

#~ msgid "High"
#~ msgstr "Augsts"

#~ msgid "Very High"
#~ msgstr "Ļoti augsts"

#~ msgid "Production"
#~ msgstr "Produkcija"

#~ msgid "Front Panel Microphone"
#~ msgstr "Priekšējā paneļa mikrofons"

#~ msgid "Front Panel Line In"
#~ msgstr "Priekšējā paneļa ieejas līnija"

#~ msgid "Front Panel Headphones"
#~ msgstr "Priekšējā paneļa austiņas"

#~ msgid "Front Panel Line Out"
#~ msgstr "Priekšējā paneļa līnijas izeja"

#~ msgid "Green Connector"
#~ msgstr "Zaļais savienotājs"

#~ msgid "Pink Connector"
#~ msgstr "Rozā savienotājs"

#~ msgid "Blue Connector"
#~ msgstr "Zilais savienotājs"

#~ msgid "White Connector"
#~ msgstr "Baltais savienotājs"

#~ msgid "Black Connector"
#~ msgstr "Melnais savienotājs"

#~ msgid "Gray Connector"
#~ msgstr "Pelākais savienotājs"

#~ msgid "Orange Connector"
#~ msgstr "Oranžais savienotājs"

#~ msgid "Red Connector"
#~ msgstr "Sarkanais savienotājs"

#~ msgid "Yellow Connector"
#~ msgstr "Dzeltains savienotājs"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Zaļais priekšējā paneļa savienotājs"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Rozā priekšējā paneļa savienotājs"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Zilais priekšējā paneļa savienotājs"

#~ msgid "White Front Panel Connector"
#~ msgstr "Baltais priekšējā paneļa savienotājs"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Melnais priekšējā paneļa savienotājs"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Pelēkais priekšējā paneļa savienotājs"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Oranžais priekšējā paneļa savienotājs"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Sarkanais priekšējā paneļa savienotājs"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Dzeltenais priekšējā paneļa savienotājs"

#~ msgid "Spread Output"
#~ msgstr "Izplest izvadu"

#~ msgid "Downmix"
#~ msgstr "Lejupmiksēšana"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Virtuālā miksera ievads"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Virtuālā miksera izvads"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Virtuālā miksera kanāli"

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

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

#~ msgid "Got unexpected frame size of %u instead of %u."
#~ msgstr "Saņēmu negaidītu kadra izmēru %u, nevis %u."

#~ msgid "Error reading %d bytes on device '%s'."
#~ msgstr "Radās kļūda nolasot %d baitus no ierīces \"%s\"."

#~ msgid "Could not enqueue buffers in device '%s'."
#~ msgstr "Nevar ierindod buferus ierīcē \"%s\"."

#~ msgid "Failed trying to get video frames from device '%s'."
#~ msgstr "Neizdevās saņemt video kadrus no ierīces \"%s\"."

#~ msgid "Failed after %d tries. device %s. system error: %s"
#~ msgstr "Neveiksme pēc %d mēģinājumiem. ierīce %s. sistēmas kļūda: %s"
