# translation of gst-plugins-bad-0.10.21.2.po to Turkish
# This file is put in the public domain.
#
# Server Acim <serveracim@gmail.com>, 2009.
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-bad-0.10.21.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2012-05-13 16:42+0200\n"
"PO-Revision-Date: 2011-04-26 19:21+0200\n"
"Last-Translator: Server Acim <serveracim@gmail.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"

msgid "Could not read title information for DVD."
msgstr "DVD'deki başlık bilgisi okunamıyor."

#, c-format
msgid "Failed to open DVD device '%s'."
msgstr "DVD aygıtı açılamadı '%s'."

msgid "Failed to set PGC based seeking."
msgstr "PGC temelli arama ayarı yapılamadı."

msgid ""
"Could not read DVD. This may be because the DVD is encrypted and a DVD "
"decryption library is not installed."
msgstr ""
"DVD okunamıyor. DVD şifrelenmiş veya DVD şifre çözme kitaplığı kurulmamış "
"olabilir."

msgid "Could not read DVD."
msgstr "DVD okunamıyor."

msgid "No file name specified for writing."
msgstr "Yazmak için dosya adı belirtilmedi."

#, c-format
msgid "Could not open file \"%s\" for writing."
msgstr "Dosyayı \"%s\" yazmak için açamıyor."

msgid "Internal data stream error."
msgstr "İç veri akım hatası."

#, c-format
msgid "Could not write to file \"%s\"."
msgstr "Dosya yazılamıyor \"%s\"."

msgid "Internal data flow error."
msgstr "İç veri akış hatası."

#, c-format
msgid "Device \"%s\" does not exist."
msgstr "Aygıt  \"%s\" bulunamadı."

#, c-format
msgid "Could not open frontend device \"%s\"."
msgstr "Aygıt açılamaz durumda \"%s\"."

#, c-format
msgid "Could not get settings from frontend device \"%s\"."
msgstr "Aygıt ayarları bulunamadı \"%s\"."

#, c-format
msgid "Could not open file \"%s\" for reading."
msgstr "Dosyayı \"%s\" okumak için açamıyor."

#~ msgid "Internal clock error."
#~ msgstr "İç saat hatası."

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr "Karıştırıcı işlemi için ses aygıtı açılamıyor."

#~ msgid ""
#~ "Could not open audio device for mixer control handling. This version of "
#~ "the Open Sound System is not supported by this element."
#~ msgstr ""
#~ "Karıştırıcı işlemi için ses aygıtı açılamıyor. Bu öğe tarafından Açık Ses "
#~ "Sistemi'nin bu sürümü desteklenmiyor."

#~ msgid "Volume"
#~ msgstr "Gürlük"

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

#~ msgid "Front"
#~ msgstr "Ön"

#~ msgid "Rear"
#~ msgstr "Arka"

#~ msgid "Headphones"
#~ msgstr "Kulaklıklar"

#~ msgid "Center"
#~ msgstr "Merkez"

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

#~ msgid "Surround"
#~ msgstr "Surround"

#~ msgid "Side"
#~ msgstr "Yan"

#~ msgid "Built-in Speaker"
#~ msgstr "Varsayılan Hoparlör"

#~ msgid "AUX 1 Out"
#~ msgstr "AUX 1 Çıkış"

#~ msgid "AUX 2 Out"
#~ msgstr "AUX 2 Çıkış"

#~ msgid "AUX Out"
#~ msgstr "AUX Çıkış"

#~ msgid "Bass"
#~ msgstr "Bas"

#~ msgid "Treble"
#~ msgstr "Tiz"

#~ msgid "3D Depth"
#~ msgstr "3D Derinlik"

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

#~ msgid "3D Enhance"
#~ msgstr "3D Genişlik"

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

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

#~ msgid "Line Out"
#~ msgstr "Hat Çıkışı"

#~ msgid "Line In"
#~ msgstr "Hat girişi"

#~ msgid "Internal CD"
#~ msgstr "Dahili CD"

#~ msgid "Video In"
#~ msgstr "Vidyo Girişi"

#~ msgid "AUX 1 In"
#~ msgstr "AUX 1 Giriş"

#~ msgid "AUX 2 In"
#~ msgstr "AUX 2 Giriş"

#~ msgid "AUX In"
#~ msgstr "AUX Giriş"

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

#~ msgid "Record Gain"
#~ msgstr "Kayıt Kazancı"

#~ msgid "Output Gain"
#~ msgstr "Çıkış Kazancı"

#~ msgid "Microphone Boost"
#~ msgstr "Mikrofon güçlendirme"

#~ msgid "Loopback"
#~ msgstr "Döngü"

#~ msgid "Diagnostic"
#~ msgstr "Yapılandırma"

#~ msgid "Bass Boost"
#~ msgstr "Bass Boost"

#~ msgid "Playback Ports"
#~ msgstr "Çalma Portları"

#~ msgid "Input"
#~ msgstr "Giriş"

#~ msgid "Record Source"
#~ msgstr "Kayıt Kaynağı"

#~ msgid "Monitor Source"
#~ msgstr "Hoparlör Kaynağı"

#~ msgid "Keyboard Beep"
#~ msgstr "Klavye Biplemesi"

#~ msgid "Monitor"
#~ msgstr "Hoparlör"

#~ msgid "Simulate Stereo"
#~ msgstr "Stereo Benzeşimi"

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

#~ msgid "Surround Sound"
#~ msgstr "Surround Ses"

#~ msgid "Microphone Gain"
#~ msgstr "Mikrofon Kazancı"

#~ msgid "Speaker Source"
#~ msgstr "Hoparlör Kaynağı"

#~ msgid "Microphone Source"
#~ msgstr "Mikrofon Kaynağı"

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

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

#~ msgid "Stereo Mix"
#~ msgstr "Stereo Karışım"

#~ msgid "Mono Mix"
#~ msgstr "Mono Karışım"

#~ msgid "Input Mix"
#~ msgstr "Giriş Karışımı"

#~ msgid "SPDIF In"
#~ msgstr "SPDIF Girişi"

#~ msgid "SPDIF Out"
#~ msgstr "SPDIF Çıkışı"

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

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

#~ msgid "Digital Out"
#~ msgstr "Sayısal Çıkış"

#~ msgid "Digital In"
#~ msgstr "Sayısal Giriş"

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

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

#~ msgid "Handset"
#~ msgstr "Elde taşıma"

#~ msgid "Other"
#~ msgstr "Diğer"

#~ msgid "None"
#~ msgstr "Yok"

#~ msgid "On"
#~ msgstr "Açık"

#~ msgid "Off"
#~ msgstr "Kapalı"

#~ msgid "Mute"
#~ msgstr "Kapat"

#~ msgid "Fast"
#~ msgstr "Hızlı"

#~ msgid "Very Low"
#~ msgstr "Çok düşük"

#~ msgid "Low"
#~ msgstr "Düşük"

#~ msgid "Medium"
#~ msgstr "Orta"

#~ msgid "High"
#~ msgstr "Yüksek"

#~ msgid "Very High"
#~ msgstr "Çok Yüksek"

#~ msgid "Production"
#~ msgstr "Yapım"

#~ msgid "Front Panel Microphone"
#~ msgstr "Ön panel Mikrofonu"

#~ msgid "Front Panel Line In"
#~ msgstr "Ön Panel Hat Girişi"

#~ msgid "Front Panel Headphones"
#~ msgstr "Ön Panel Kulaklıkları"

#~ msgid "Front Panel Line Out"
#~ msgstr "Ön Panel Hat Çıkışı"

#~ msgid "Green Connector"
#~ msgstr "Yeşil Konnektör"

#~ msgid "Pink Connector"
#~ msgstr "Pembe Konnektör"

#~ msgid "Blue Connector"
#~ msgstr "Mavi Konnektör"

#~ msgid "White Connector"
#~ msgstr "Beyaz Konnektör"

#~ msgid "Black Connector"
#~ msgstr "Siyah Konnektör"

#~ msgid "Gray Connector"
#~ msgstr "Gri Konnektör"

#~ msgid "Orange Connector"
#~ msgstr "Portakal rengi Konnektör"

#~ msgid "Red Connector"
#~ msgstr "Kırmızı Konnektör"

#~ msgid "Yellow Connector"
#~ msgstr "Sarı Konnektör"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Yeşil Ön Panel Konnektörü"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Pembe Ön Panel Könnektörü"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Mavi Ön Panel Konnektörü"

#~ msgid "White Front Panel Connector"
#~ msgstr "Beyaz Ön Panel Konnektörü"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Siyah Ön Panel Konnektörü"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Gri Ön Panel Konnektörü"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Portakal rengi Ön Panel Konnektörü"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Kırmızı Ön Panel Konnektörü"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Sarı Ön Panel Konnektörü"

#~ msgid "Spread Output"
#~ msgstr "Çıkışı Yay"

#~ msgid "Downmix"
#~ msgstr "Sonuç Karışımı"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Sanal Karıştırıcı Girişi"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Sanal Karıştırıcı Çıkışı"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Sanal Karıştırıcı Kanalları"

#~ msgid "%s Function"
#~ msgstr "%s İşlev"

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

#~ msgid ""
#~ "Could not open audio device for playback. Device is being used by another "
#~ "application."
#~ msgstr ""
#~ "Çalmak için ses aygıtı açılamıyor. Aygıt başka bir uygulama tarafından "
#~ "kullanılıyor."

#~ msgid ""
#~ "Could not open audio device for playback. You don't have permission to "
#~ "open the device."
#~ msgstr "Çalmak için ses aygıtı açılamıyor. Aygıtı açma izniniz bulunmuyor."

#~ msgid "Could not open audio device for playback."
#~ msgstr "Çalmak için ses aygıtı açılamıyor."

#~ msgid ""
#~ "Could not open audio device for playback. This version of the Open Sound "
#~ "System is not supported by this element."
#~ msgstr ""
#~ "Çalmak için ses aygıtı açılamıyor. Açık Ses Sistemi'nin bu sürümü bu öğe "
#~ "tarafından desteklenmiyor."

#~ msgid "Playback is not supported by this audio device."
#~ msgstr "Bu ses aygıtı çalma işlevini desteklemiyor."

#~ msgid "Audio playback error."
#~ msgstr "Ses çalma hatası."

#~ msgid "Recording is not supported by this audio device."
#~ msgstr "Bu ses aygıtı kayıt işlevini desteklemiyor."

#~ msgid "Error recording from audio device."
#~ msgstr "Ses aygıtı ile kayıtta hata."

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

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

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

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

#~ msgid "Green connector function"
#~ msgstr "Yeşil konnektör işlevi"

#~ msgid "Green front panel connector function"
#~ msgstr "Yeşil ön panel konnektör işlevi"

#~ msgid "Pink connector function"
#~ msgstr "Pembe konnektör işlevi"

#~ msgid "Pink front panel connector function"
#~ msgstr "Pembe ön panel konnektör işlevi"

#~ msgid "Blue connector function"
#~ msgstr "Mavi konnektör işlevi"

#~ msgid "Blue front panel connector function"
#~ msgstr "Mavi ön panel konnektör işlevi"

#~ msgid "Orange connector function"
#~ msgstr "Portakal konnektör işlevi"

#~ msgid "Orange front panel connector function"
#~ msgstr "Portakal ön panel konnektör işlevi"

#~ msgid "Black connector function"
#~ msgstr "Siyah konnektör işlevi"

#~ msgid "Black front panel connector function"
#~ msgstr "Siyah ön panel konnektör işlevi"

#~ msgid "Gray connector function"
#~ msgstr "Gri konnektör işlevi"

#~ msgid "Gray front panel connector function"
#~ msgstr "Gri ön panel konnektör işlevi"

#~ msgid "White connector function"
#~ msgstr "Beyaz konnektör işlevi"

#~ msgid "White front panel connector function"
#~ msgstr "Beyaz ön panel konnektör işlevi"

#~ msgid "Red connector function"
#~ msgstr "Kırmızı konnektör işlevi"

#~ msgid "Red front panel connector function"
#~ msgstr "Kırmızı ön panel konnektör işlevi"

#~ msgid "Yellow connector function"
#~ msgstr "Sarı konnektör işlevi"

#~ msgid "Yellow front panel connector function"
#~ msgstr "Sarı ön panel konnektör işlevi"

#~ msgid "Virtual mixer channel configuration"
#~ msgstr "Sanal karıştırıcı kanal yapılandırması"
