# Hungarian translation of gst-plugins-good
# This file is distributed under the same license as the gst-plugins-good package.
# Copyright (C) 2004, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
#
# Laszlo Dvornik <dvornik@invitel.hu>, 2004.
# Gabor Kelemen <kelemeng@gnome.hu>, 2007, 2008, 2009, 2010, 2012.
# Balázs Úr <urbalazs@gmail.com>, 2014.
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2014-06-22 17:33+0200\n"
"PO-Revision-Date: 2014-05-23 21:00+0200\n"
"Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
"Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Rosetta-Export-Date: 2007-07-27 19:18:15+0000\n"
"X-Generator: Lokalize 1.5\n"
"X-Rosetta-Export-Date: 2007-07-27 19:18:15+0000\n"
"Plural-Forms:  nplurals=2; plural=(n != 1);\n"

msgid "Jack server not found"
msgstr "Jack kiszolgáló nem található"

msgid "Failed to decode JPEG image"
msgstr "A JPEG kép visszafejtése meghiúsult"

#. TRANSLATORS: 'song title' by 'artist name'
#, c-format
msgid "'%s' by '%s'"
msgstr "„%s” ettől: „%s”"

msgid "Could not connect to server"
msgstr "Nem lehet csatlakozni a kiszolgálóhoz"

msgid "No URL set."
msgstr "Nincs beállítva URL."

msgid "Server does not support seeking."
msgstr "A kiszolgáló nem támogatja a tekerést."

msgid "Could not resolve server name."
msgstr "Nem lehet feloldani a kiszolgáló nevét."

msgid "Could not establish connection to server."
msgstr "Nem hozható létre kapcsolat a kiszolgálóhoz."

msgid "Secure connection setup failed."
msgstr "A biztonságos kapcsolat kialakítása meghiúsult."

msgid ""
"A network error occured, or the server closed the connection unexpectedly."
msgstr ""
"Hálózati hiba történt, vagy a kiszolgáló váratlanul lezárta a kapcsolatot."

msgid "Server sent bad data."
msgstr "A kiszolgáló hibás adatokat küldött."

msgid "Internal data stream error."
msgstr "Belső adatfolyam-hiba."

msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr "Nincs vagy érvénytelen bemeneti hang, az AVI-folyam sérült lesz."

msgid "This file contains no playable streams."
msgstr "A fájl nem tartalmaz lejátszható adatfolyamokat."

msgid "This file is invalid and cannot be played."
msgstr "A fájl nem érvényes és nem játszható le."

msgid "Cannot play stream because it is encrypted with PlayReady DRM."
msgstr ""
"Nem lehet lejátszani a folyamot, mert PlayReady DRM titkosítás van rajta."

msgid "This file is corrupt and cannot be played."
msgstr "A fájl sérült és nem játszható le."

msgid "Invalid atom size."
msgstr "Érvénytelen atom méret."

msgid "This file is incomplete and cannot be played."
msgstr "A fájl nem teljes és nem játszható le."

msgid "The video in this file might not play correctly."
msgstr "A fájlban található videó lehet, hogy nem játszható le megfelelően."

#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr ""
"A fájl túl sok adatfolyamot tartalmaz. Csak az első %d kerül lejátszásra."

msgid ""
"No supported stream was found. You might need to install a GStreamer RTSP "
"extension plugin for Real media streams."
msgstr ""
"Nem található támogatott adatfolyam. Telepítse a GStreamer RTSP bővítményt a "
"Real media adatfolyamokhoz."

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 ""
"Nem található támogatott adatfolyam. Lehet, hogy több átviteli protokollt "
"kell engedélyezni, vagy hiányzik a megfelelő GStreamer RTSP bővítmény."

msgid "Internal data flow error."
msgstr "Belső adatfolyam-hiba."

msgid ""
"Could not open audio device for playback. Device is being used by another "
"application."
msgstr ""
"Nem nyitható meg hangeszköz a lejátszáshoz. Az eszközt másik alkalmazás "
"használja."

msgid ""
"Could not open audio device for playback. You don't have permission to open "
"the device."
msgstr ""
"Nem nyitható meg hangeszköz a lejátszáshoz. Nincs jogosultsága az eszköz "
"megnyitására."

msgid "Could not open audio device for playback."
msgstr "Nem nyitható meg hangeszköz a lejátszáshoz."

msgid ""
"Could not open audio device for playback. This version of the Open Sound "
"System is not supported by this element."
msgstr ""
"Nem nyitható meg hangeszköz a lejátszáshoz. Az Open Sound System ezen "
"verzióját az elem nem támogatja."

msgid "Playback is not supported by this audio device."
msgstr "Ez a hangeszköz nem támogatja a lejátszást."

msgid "Audio playback error."
msgstr "Hanglejátszási hiba."

msgid "Recording is not supported by this audio device."
msgstr "Ez a hangeszköz nem támogatja a felvételt."

msgid "Error recording from audio device."
msgstr "Hiba a hangeszközről való felvételkor."

msgid ""
"Could not open audio device for recording. You don't have permission to open "
"the device."
msgstr ""
"Nem nyitható meg hangeszköz a felvételhez. Nincs jogosultsága az eszköz "
"megnyitására."

msgid "Could not open audio device for recording."
msgstr "Nem nyitható meg hangeszköz a felvételhez."

msgid "Record Source"
msgstr "Felvétel forrása"

msgid "Microphone"
msgstr "Mikrofon"

msgid "Line In"
msgstr "Vonalbemenet"

msgid "Internal CD"
msgstr "Belső CD"

msgid "SPDIF In"
msgstr "SPDIF be"

msgid "AUX 1 In"
msgstr "1. AUX be"

msgid "AUX 2 In"
msgstr "2. AUX be"

msgid "Codec Loopback"
msgstr "Kodek visszacsatolás"

msgid "SunVTS Loopback"
msgstr "SunVTS visszacsatolás"

msgid "Volume"
msgstr "Hangerő"

msgid "Gain"
msgstr "Erősítés"

msgid "Monitor"
msgstr "Monitor"

msgid "Built-in Speaker"
msgstr "Beépített hangszóró"

msgid "Headphone"
msgstr "Fejhallgató"

msgid "Line Out"
msgstr "Vonalkimenet"

msgid "SPDIF Out"
msgstr "SPDIF ki"

msgid "AUX 1 Out"
msgstr "1. AUX ki"

msgid "AUX 2 Out"
msgstr "2. AUX ki"

#, c-format
msgid "Error reading %d bytes from device '%s'."
msgstr "Hiba %d bájt olvasásakor a következő eszközről: „%s”."

#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr ""
"A(z) „%s” eszköz által kezelhető lehetséges videoformátumok felsorolása "
"sikertelen"

#, c-format
msgid "Could not map buffers from device '%s'"
msgstr "Nem képezhetők le a(z) „%s” eszköz pufferei"

#, c-format
msgid "The driver of device '%s' does not support the IO method %d"
msgstr "A(z) „%s” eszköz illesztőprogramja nem támogatja a(z) %d. IO módot"

#, c-format
msgid "The driver of device '%s' does not support any known IO method."
msgstr ""
"A(z) „%s” eszköz illesztőprogramja nem támogat egyetlen ismert IO módot sem."

#, c-format
msgid "Device '%s' does not support video capture"
msgstr "A(z) „%s” eszköz nem támogatja a videofelvételt"

#, c-format
msgid "Device '%s' is busy"
msgstr "A(z) „%s” eszköz foglalt"

#, c-format
msgid "Device '%s' cannot capture at %dx%d"
msgstr "A(z) „%s” eszköz nem képes felvenni %dx%d felbontásban"

#, c-format
msgid "Device '%s' cannot capture in the specified format"
msgstr "A(z) „%s” eszköz nem képes felvenni a megadott formátumban"

#, c-format
msgid "Device '%s' does support non-contiguous planes"
msgstr "A(z) „%s” eszköz nem támogatja a nem szomszédos síkokat"

#, c-format
msgid "Could not get parameters on device '%s'"
msgstr "Nem kérhetők le a(z) „%s” eszköz paraméterei"

msgid "Video device did not accept new frame rate setting."
msgstr "A videoeszköz nem fogadta el az új képkockasebesség-beállítást."

msgid "Video device did not provide output format."
msgstr "A videoeszköz nem szolgáltatott kimeneti formátumot."

msgid "Video device returned invalid dimensions."
msgstr "A videoeszköz érvénytelen dimenziókkal tért vissza."

msgid "Video devices uses an unsupported interlacing method."
msgstr "A videoeszközök nem támogatott váltottsoros módot használnak."

msgid "Video devices uses an unsupported pixel format."
msgstr "A videoeszközök nem támogatott képpontformátumot használnak."

msgid "Failed to configure internal buffer pool."
msgstr "Nem sikerült beállítani a belső puffertárolót."

msgid "Video device did not suggest any buffer size."
msgstr "A videoeszköz nem javasolt semmilyen pufferméretet."

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

#, c-format
msgid "Failed to get settings of tuner %d on device '%s'."
msgstr "A(z) %d. tuner beállításának lekérése a(z) „%s” eszközön meghiúsult."

#, c-format
msgid "Error getting capabilities for device '%s'."
msgstr "Hiba a(z) „%s” eszköz képességeinek lekérésekor."

#, c-format
msgid "Device '%s' is not a tuner."
msgstr "A(z) „%s” eszköz nem tuner."

#, c-format
msgid "Failed to get radio input on device '%s'. "
msgstr "A rádióbemenet lekérése meghiúsult a(z) „%s” eszközön."

#, c-format
msgid "Failed to set input %d on device %s."
msgstr "A(z) %d. bemenet beállítása meghiúsult a(z) „%s” eszközön."

#, c-format
msgid "Failed to change mute state for device '%s'."
msgstr "A némítási állapot módosítása meghiúsult a(z) „%s” eszközön."

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

#, fuzzy, c-format
msgid "Converter on device %s has no supported input format"
msgstr "A videoeszközök nem támogatott képpontformátumot használnak."

#, fuzzy, c-format
msgid "Converter on device %s has no supported output format"
msgstr "A videoeszközök nem támogatott képpontformátumot használnak."

#, fuzzy, c-format
msgid "Encoder on device %s has no supported input format"
msgstr "A videoeszközök nem támogatott képpontformátumot használnak."

#, fuzzy, c-format
msgid "Encoder on device %s has no supported output format"
msgstr "A videoeszközök nem támogatott képpontformátumot használnak."

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

#, fuzzy
msgid "Failed to start decoding thread."
msgstr "A JPEG kép visszafejtése meghiúsult"

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 ""
"hiba a(z) „%s” eszköz képességeinek lekérésekor. Ez nem egy v4l2 meghajtó. "
"Ellenőrizze, hogy nem v4l1 meghajtó-e."

#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr "A(z) %d bemenet attribútumainak lekérése meghiúsult a(z) %s eszközön"

#, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr "A(z) %d. tuner beállításának lekérése a(z) „%s” eszközön meghiúsult."

#, c-format
msgid "Failed to query norm on device '%s'."
msgstr "A norma lekérdezése meghiúsult a(z) „%s” eszköztől."

#, c-format
msgid "Failed getting controls attributes on device '%s'."
msgstr "A vezérlőattribútumok lekérése meghiúsult a(z) „%s” eszközön."

#, c-format
msgid "Cannot identify device '%s'."
msgstr "Nem azonosítható a(z) „%s” eszköz."

#, c-format
msgid "This isn't a device '%s'."
msgstr "Ez nem egy eszköz: „%s”."

#, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "Nem lehet olvasásra és írásra megnyitni a(z) „%s” eszközt."

#, c-format
msgid "Device '%s' is not a capture device."
msgstr "A(z) „%s” eszköz nem rögzítőeszköz."

#, c-format
msgid "Device '%s' is not a output device."
msgstr "A(z) „%s” eszköz nem kimeneti eszköz."

#, c-format
msgid "Device '%s' is not a M2M device."
msgstr "A(z) „%s” eszköz nem M2M eszköz."

#, fuzzy, c-format
msgid "Could not dup device '%s' for reading and writing."
msgstr "Nem lehet olvasásra és írásra megnyitni a(z) „%s” eszközt."

#, c-format
msgid "Failed to set norm for device '%s'."
msgstr "A norma beállítása meghiúsult a(z) „%s” eszközön."

#, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr ""
"A tuner aktuális frekvenciájának lekérdezése meghiúsult a(z) „%s” eszköztől."

#, c-format
msgid "Failed to set current tuner frequency for device '%s' to %lu Hz."
msgstr ""
"A tuner aktuális frekvenciájának beállítása meghiúsult a(z) „%s” eszközön "
"%lu Hz-re."

#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr "A jelerősség lekérdezése meghiúsult a(z) „%s” eszközön."

#, c-format
msgid "Failed to get value for control %d on device '%s'."
msgstr "A(z) %d. vezérlőelem értékének lekérése meghiúsult a(z) „%s” eszközön."

#, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr ""
"A(z) $%2d érték beállítása $%1d vezérlőelemhez meghiúsult a(z) „%s” eszközön."

#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr ""
"Az aktuális bemenet lekérése meghiúsult a(z) „%s” eszközről. Lehet, hogy ez "
"egy rádióeszköz."

#, c-format
msgid ""
"Failed to get current output on device '%s'. May be it is a radio device"
msgstr ""
"Az aktuális kimenet lekérése meghiúsult a(z) „%s” eszközről. Lehet, hogy ez "
"egy rádióeszköz."

#, c-format
msgid "Failed to set output %d on device %s."
msgstr "A(z) %d. kimenet beállítása meghiúsult a(z) „%s” eszközön."

msgid "Changing resolution at runtime is not yet supported."
msgstr "A felbontás módosítása futás közben még nem támogatott."

msgid "Cannot operate without a clock"
msgstr "Óra nélkül lehetetlen a működés"

#~ msgid "Could not establish connection to sound server"
#~ msgstr "Nem hozható létre kapcsolat a hangkiszolgálóhoz"

#~ msgid "Failed to query sound server capabilities"
#~ msgstr "A hangkiszolgáló képességeinek lekérdezése meghiúsult"

#~ msgid "Bass"
#~ msgstr "Basszus"

#~ msgid "Treble"
#~ msgstr "Magas"

#~ msgid "Synth"
#~ msgstr "Szintet."

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

#~ msgid "Speaker"
#~ msgstr "Hangfal"

#~ msgid "Line-in"
#~ msgstr "Vonalbemenet"

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

#~ msgid "Mixer"
#~ msgstr "Keverő"

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

#~ msgid "Record"
#~ msgstr "Felvétel"

#~ msgid "In-gain"
#~ msgstr "Be-erősítés"

#~ msgid "Out-gain"
#~ msgstr "Ki-erősítés"

#~ msgid "Line-1"
#~ msgstr "1. vonal"

#~ msgid "Line-2"
#~ msgstr "2. vonal"

#~ msgid "Line-3"
#~ msgstr "3. vonal"

#~ msgid "Digital-1"
#~ msgstr "1. digitális"

#~ msgid "Digital-2"
#~ msgstr "2. digitális"

#~ msgid "Digital-3"
#~ msgstr "3. digitális"

#~ msgid "Phone-in"
#~ msgstr "Hang-be"

#~ msgid "Phone-out"
#~ msgstr "Hang-ki"

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

#~ msgid "Radio"
#~ msgstr "Rádió"

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr "Nem nyitható meg hangeszköz a keverővezérlő kezeléséhez."

#~ msgid ""
#~ "Could not open audio device for mixer control handling. This version of "
#~ "the Open Sound System is not supported by this element."
#~ msgstr ""
#~ "Nem nyitható meg hangeszköz a keverővezérlő kezeléséhez. Az Open Sound "
#~ "System ezen verzióját az elem nem támogatja."

#~ msgid "Master"
#~ msgstr "Fő hangerő"

#~ msgid "Front"
#~ msgstr "Elülső"

#~ msgid "Rear"
#~ msgstr "Hátsó"

#~ msgid "Headphones"
#~ msgstr "Fülhallgató"

#~ msgid "Center"
#~ msgstr "Középső"

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

#~ msgid "Surround"
#~ msgstr "Térhatású"

#~ msgid "Side"
#~ msgstr "Oldalsó"

#~ msgid "AUX Out"
#~ msgstr "AUX ki"

#~ msgid "3D Depth"
#~ msgstr "3D mély"

#~ msgid "3D Center"
#~ msgstr "3D középső"

#~ msgid "3D Enhance"
#~ msgstr "3D javítás"

#~ msgid "Telephone"
#~ msgstr "Telefon"

#~ msgid "Video In"
#~ msgstr "Video be"

#~ msgid "AUX In"
#~ msgstr "AUX be"

#~ msgid "Record Gain"
#~ msgstr "Felvételerősítés"

#~ msgid "Output Gain"
#~ msgstr "Kimeneterősítés"

#~ msgid "Microphone Boost"
#~ msgstr "Mikrofonerősítés"

#~ msgid "Diagnostic"
#~ msgstr "Diagnosztika"

#~ msgid "Bass Boost"
#~ msgstr "Basszuskiemelés"

#~ msgid "Playback Ports"
#~ msgstr "Lejátszási portok"

#~ msgid "Input"
#~ msgstr "Bemenet"

#~ msgid "Monitor Source"
#~ msgstr "Monitor forrása"

#~ msgid "Keyboard Beep"
#~ msgstr "Billentyűzetcsengő"

#~ msgid "Simulate Stereo"
#~ msgstr "Sztereó szimulálása"

#~ msgid "Stereo"
#~ msgstr "Sztereó"

#~ msgid "Surround Sound"
#~ msgstr "Térhatású hang"

#~ msgid "Microphone Gain"
#~ msgstr "Mikrofonerősítés"

#~ msgid "Speaker Source"
#~ msgstr "Hangfalforrás"

#~ msgid "Microphone Source"
#~ msgstr "Mikrofonforrás"

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

#~ msgid "Center / LFE"
#~ msgstr "Középső / LFE"

#~ msgid "Stereo Mix"
#~ msgstr "Sztereó keverés"

#~ msgid "Mono Mix"
#~ msgstr "Monó keverés"

#~ msgid "Input Mix"
#~ msgstr "Bemeneti keverés"

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

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

#~ msgid "Digital Out"
#~ msgstr "Digitális ki"

#~ msgid "Digital In"
#~ msgstr "Digitális be"

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

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

#~ msgid "Handset"
#~ msgstr "Mobiltelefon"

#~ msgid "Other"
#~ msgstr "Egyéb"

#~ msgid "None"
#~ msgstr "Nincs"

#~ msgid "On"
#~ msgstr "Be"

#~ msgid "Off"
#~ msgstr "Ki"

#~ msgid "Mute"
#~ msgstr "Némítás"

#~ msgid "Fast"
#~ msgstr "Gyors"

#~ msgid "Very Low"
#~ msgstr "Nagyon alacsony"

#~ msgid "Low"
#~ msgstr "Alacsony"

#~ msgid "Medium"
#~ msgstr "Közepes"

#~ msgid "High"
#~ msgstr "Magas"

#~ msgid "Very High"
#~ msgstr "Nagyon magas"

#~ msgid "Production"
#~ msgstr "Éles"

#~ msgid "Front Panel Microphone"
#~ msgstr "Előlapi mikrofon"

#~ msgid "Front Panel Line In"
#~ msgstr "Előlapi vonalbemenet"

#~ msgid "Front Panel Headphones"
#~ msgstr "Előlapi fülhallgató"

#~ msgid "Front Panel Line Out"
#~ msgstr "Előlapi vonalkimenet"

#~ msgid "Green Connector"
#~ msgstr "Zöld csatlakozó"

#~ msgid "Pink Connector"
#~ msgstr "Rózsaszín csatlakozó"

#~ msgid "Blue Connector"
#~ msgstr "Kék csatlakozó"

#~ msgid "White Connector"
#~ msgstr "Fehér csatlakozó"

#~ msgid "Black Connector"
#~ msgstr "Fekete csatlakozó"

#~ msgid "Gray Connector"
#~ msgstr "Szürke csatlakozó"

#~ msgid "Orange Connector"
#~ msgstr "Narancs csatlakozó"

#~ msgid "Red Connector"
#~ msgstr "Vörös csatlakozó"

#~ msgid "Yellow Connector"
#~ msgstr "Sárga csatlakozó"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Zöld előoldali csatlakozó"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Rózsaszín előoldali csatlakozó"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Kék előoldali csatlakozó"

#~ msgid "White Front Panel Connector"
#~ msgstr "Fehér előoldali csatlakozó"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Fekete előoldali csatlakozó"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Szürke előoldali csatlakozó"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Narancs előoldali csatlakozó"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Vörös előoldali csatlakozó"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Sárga előoldali csatlakozó"

#~ msgid "Spread Output"
#~ msgstr "Szóráskimenet"

#~ msgid "Downmix"
#~ msgstr "Lekeverés"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Virtuális keverőbemenet"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Virtuális keverőkimenet"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Virtuális keverőcsatornák"

#~ msgid "%s %d Function"
#~ msgstr "%s %d funkció"

#~ msgid "%s Function"
#~ msgstr "%s funkció"

#~ msgid "Got unexpected frame size of %u instead of %u."
#~ msgstr "Váratlan keretméret (%u) érkezett %u helyett."

#~ msgid "Error reading %d bytes on device '%s'."
#~ msgstr "Hiba %d bájt olvasásakor a következő eszközről: „%s”."

#~ msgid "Could not enqueue buffers in device '%s'."
#~ msgstr "Nem állíthatók sorba a pufferek a(z) „%s” eszközben."

#~ msgid "Failed trying to get video frames from device '%s'."
#~ msgstr "Nem sikerült videokockákat lekérni a(z) „%s” eszköztől."

#~ msgid "Failed after %d tries. device %s. system error: %s"
#~ msgstr "Hiba %d próbálkozás után. Eszköz: %s. Rendszerhiba: %s."
