# Hungarian translation of gst-plugins-bad
# This file is distributed under the same license as the gst-plugins-bad package.
# Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
#
# Gabor Kelemen <kelemeng@gnome.hu>, 2007, 2008, 2009, 2012.
# Balázs Úr <urbalazs at gmail dot com>, 2014.
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-bad 1.3.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2014-06-22 17:56+0200\n"
"PO-Revision-Date: 2014-05-23 20:42+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-Generator: Lokalize 1.5\n"
"Plural-Forms:  nplurals=2; plural=(n != 1);\n"

msgid "Could not read title information for DVD."
msgstr "Nem lehet címinformációkat olvasni a DVD-ről."

#, c-format
msgid "Failed to open DVD device '%s'."
msgstr "Nem nyitható meg a DVD eszköz („%s”)."

msgid "Failed to set PGC based seeking."
msgstr "A PGC-alapú keresés beállítása meghiúsult."

msgid ""
"Could not read DVD. This may be because the DVD is encrypted and a DVD "
"decryption library is not installed."
msgstr ""
"Nem olvasható a DVD. Ezt az okozhatja, hogy a DVD titkosított, és a DVD-"
"visszafejtő programkönyvtár nincs telepítve."

msgid "Could not read DVD."
msgstr "Nem olvasható a DVD."

msgid "This file contains no playable streams."
msgstr "Ez a fájl nem tartalmaz lejátszható folyamokat."

msgid "Couldn't get the Manifest's URI"
msgstr "Nem kérhető le a Manifest URL-e"

msgid "Failed to get fragment URL."
msgstr "Nem sikerült lekérni a töredék URL-t."

msgid "Internal data stream error."
msgstr "Belső adatfolyamhiba."

msgid "Couldn't download fragments"
msgstr "Nem sikerült letölteni a töredékeket"

msgid "Could not open sndfile stream for reading."
msgstr "A hangfájl folyam nem nyitható meg olvasásra."

msgid "No file name specified for writing."
msgstr "Nincs megadva fájlnév az íráshoz."

#, c-format
msgid "Could not open file \"%s\" for writing."
msgstr "A fájl („%s”) nem nyitható meg írásra."

#, c-format
msgid "Could not write to file \"%s\"."
msgstr "Nem lehet írni a fájlba („%s”)."

msgid "Could not establish connection to sndio"
msgstr "Nem hozható létre kapcsolat az sndio programmal"

msgid "Failed to query sndio capabilities"
msgstr "Nem sikerült lekérdezni az sndio képességeit"

msgid "Could not configure sndio"
msgstr "Nem sikerült az sndio beállítása"

msgid "Could not start sndio"
msgstr "Nem sikerült az sndio indítása"

msgid "Internal data flow error."
msgstr "Belső adatfolyamhiba."

msgid "Generated file has a larger preroll time than its streams duration"
msgstr ""
"Az előállított fájlnak nagyobb előtekerési ideje van, mint a folyamának "
"időtartama"

#, c-format
msgid "Missing element '%s' - check your GStreamer installation."
msgstr "Hiányzó „%s” elem - ellenőrizze a GStreamer telepítését."

msgid "File location is set to NULL, please set it to a valid filename"
msgstr ""
"A fájl helye NULL értékre lett állítva, kérjük állítsa be egy érvényes "
"fájlnévre"

msgid "Subpicture format was not configured before data flow"
msgstr "A részkép formátuma nem lett beállítva az adatfolyam előtt"

#, c-format
msgid "Given file name \"%s\" can't be converted to local file name encoding."
msgstr ""
"A kapott „%s” fájlnevet nem lehet átalakítani a helyi fájlnév kódolásra."

#, c-format
msgid "Device \"%s\" does not exist."
msgstr "Az eszköz („%s”) nem létezik."

#, c-format
msgid "Could not open frontend device \"%s\"."
msgstr "Nem nyitható meg az előtéteszköz („%s”)."

#, c-format
msgid "Could not get settings from frontend device \"%s\"."
msgstr "Nem kérhetők le a beállítások az előtéteszköztől („%s”)."

#, c-format
msgid "Cannot enumerate delivery systems from frontend device \"%s\"."
msgstr ""
"Nem lehet felsorolni a szállító rendszereket a(z) „%s” előtéteszköztől."

#, c-format
msgid "Could not open file \"%s\" for reading."
msgstr "A fájl („%s”) nem nyitható meg olvasásra."

msgid "Couldn't find DVB channel configuration file"
msgstr "Nem található DVB-csatorna beállítófájl"

#, c-format
msgid "Couldn't load DVB channel configuration file: %s"
msgstr "Nem sikerült betölteni a DVB-csatorna beállítófájlt: %s"

msgid "DVB channel configuration file doesn't contain any channels"
msgstr "A DVB-csatorna beállítófájl nem tartalmaz egyetlen csatornát sem"

#, c-format
msgid "Couldn't find details for DVB channel %s"
msgstr "Nem találhatók a(z) %s DVB-csatorna részletei"

#~ msgid "Internal clock error."
#~ msgstr "Belső órahiba."

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr "A hangeszköz nem nyitható meg a keverő vezérlőinek 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 ""
#~ "A hangeszköz nem nyitható meg a keverő vezérlőinek kezeléséhez. A Nyílt "
#~ "hangrendszer ezen verzióját nem támogatja az elem."

#~ msgid "Volume"
#~ msgstr "Hangerő"

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

#~ msgid "Front"
#~ msgstr "Elöl"

#~ msgid "Rear"
#~ msgstr "Hátul"

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

#~ msgid "Center"
#~ msgstr "Közép"

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

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

#~ msgid "Side"
#~ msgstr "Oldalt"

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

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

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

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

#~ msgid "Bass"
#~ msgstr "Mély"

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

#~ msgid "3D Depth"
#~ msgstr "3D mélység"

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

#~ msgid "3D Enhance"
#~ msgstr "3D bővítés"

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

#~ msgid "Microphone"
#~ msgstr "Mikrofon"

#~ msgid "Line Out"
#~ msgstr "Vonalkimenet"

#~ msgid "Line In"
#~ msgstr "Vonalbemenet"

#~ msgid "Internal CD"
#~ msgstr "Belső CD"

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

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

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

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

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

#~ msgid "Record Gain"
#~ msgstr "Felvétel-erősítés"

#~ msgid "Output Gain"
#~ msgstr "Kimenet-erősítés"

#~ msgid "Microphone Boost"
#~ msgstr "Mikrofon-erősítés"

#~ msgid "Loopback"
#~ msgstr "Visszacsatolás"

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

#~ msgid "Bass Boost"
#~ msgstr "Mély erősítése"

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

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

#~ msgid "Record Source"
#~ msgstr "Forrás felvétele"

#~ msgid "Monitor Source"
#~ msgstr "Forrás figyelése"

#~ msgid "Keyboard Beep"
#~ msgstr "Billentyűzethang"

#~ msgid "Monitor"
#~ msgstr "Figyelés"

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

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

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

#~ msgid "Microphone Gain"
#~ msgstr "Mikrofon erősítése"

#~ msgid "Speaker Source"
#~ msgstr "Hangszóróforrás"

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

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

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

#~ msgid "Stereo Mix"
#~ msgstr "Sztereó keverő"

#~ msgid "Mono Mix"
#~ msgstr "Mono keverő"

#~ msgid "Input Mix"
#~ msgstr "Bemeneti keverő"

#~ msgid "SPDIF In"
#~ msgstr "SPDIF be"

#~ msgid "SPDIF Out"
#~ msgstr "SPDIF ki"

#~ 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 "Kagyló"

#~ 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 "Előállítás"

#~ 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őlapi csatlakozó"

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

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

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

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

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

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

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

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

#~ msgid "Spread Output"
#~ msgstr "Kimenet szórása"

#~ 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 Function"
#~ msgstr "%s funkció"

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

#~ 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. A Nyílt hangrendszer ezen "
#~ "verzióját nem támogatja az elem."

#~ msgid "Playback is not supported by this audio device."
#~ msgstr "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 "A hangeszköz nem támogatja a felvételt."

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