# Hungarian translation for gst-plugins-good.
# Copyright (C) 2004, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
# This file is distributed under the same license as the gst-plugins-good package.
#
# Laszlo Dvornik <dvornik@invitel.hu>, 2004.
# Gabor Kelemen <kelemeng@gnome.hu>, 2007, 2008, 2009, 2010, 2012, 2014, 2016.
# Balázs Úr <urbalazs@gmail.com>, 2014, 2015.
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 1.7.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2017-05-04 15:05+0300\n"
"PO-Revision-Date: 2016-03-14 18:35+0100\n"
"Last-Translator: Gabor Kelemen <kelemeng@gnome.hu>\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 sikerült csatlakozni a kiszolgálóhoz"

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

msgid "Could not resolve server name."
msgstr "Nem sikerült 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 occurred, 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 "Server does not support seeking."
msgstr "A kiszolgáló nem támogatja a tekerést."

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 ""
"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 "CoreAudio device not found"
msgstr "A CoreAudio eszköz nem található"

msgid "CoreAudio device could not be opened"
msgstr "A CoreAudio eszköz nem nyitható meg"

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' 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."

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

#, fuzzy
msgid "Video device 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 "Nincs importálási forrásként használható alárendelt tároló."

#, 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 "Nem sikerült lefoglalni a szükséges memóriát."

msgid "Failed to allocate required memory."
msgstr "Nem sikerült lefoglalni a szükséges memóriát."

#, c-format
msgid "Converter on device %s has no supported input format"
msgstr "A(z) %s eszközön lévő átalakítónak nincs támogatott bemeneti formátuma"

#, c-format
msgid "Converter on device %s has no supported output format"
msgstr "A(z) %s eszközön lévő átalakítónak nincs támogatott kimeneti formátuma"

#, c-format
msgid "Encoder on device %s has no supported input format"
msgstr "A(z) %s eszközön lévő kódolónak nincs támogatott bemeneti formátuma"

#, c-format
msgid "Encoder on device %s has no supported output format"
msgstr "A(z) %s eszközön lévő kódolónak nincs támogatott kimeneti formátuma"

msgid "Failed to start decoding thread."
msgstr "Nem sikerült elindítani a dekódolási szálat."

msgid "Failed to process frame."
msgstr "Nem sikerült feldolgozni a keretet."

#, 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 sikerült 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."

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

#, 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 "Internal data stream error."
#~ msgstr "Belső adatfolyam-hiba."

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

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

#~ 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."
