# translation of gst-plugins-good-1.0.3.po to Turkish
# This file is put in the public domain.
# This file is distributed under the same license as the gst-plugins-good package.
# Server Acim <serveracim@gmail.com>, 2010.
# Server Acim <serveracim@gmail.com>, 2011.
# Server Acim <serveracim@gmail.com>, 2013, 2015.
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 1.4.1\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2016-11-29 15:32+0200\n"
"PO-Revision-Date: 2015-01-10 21:07+0100\n"
"Last-Translator: Volkan Gezer <volkangezer@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"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Lokalize 1.5\n"

msgid "Jack server not found"
msgstr "Jack sunucusu bulunamadı"

msgid "Failed to decode JPEG image"
msgstr "JPEG görüntüsünü çözümlenemedi"

#. TRANSLATORS: 'song title' by 'artist name'
#, c-format
msgid "'%s' by '%s'"
msgstr "'%s' tarafından '%s'"

msgid "Could not connect to server"
msgstr "Sunucuya bağlanamıyor"

msgid "No URL set."
msgstr "Hiç bir URL ayarlanmamış."

msgid "Corrupted HTTP response."
msgstr ""

msgid "Server does not support seeking."
msgstr "Sunucu aramayı desteklemiyor."

msgid "Could not resolve server name."
msgstr "Sunucu adı çözümlenemiyor."

msgid "Could not establish connection to server."
msgstr "Sunucuyla bağlantı kurulumayor."

msgid "Secure connection setup failed."
msgstr "Güvenli bağlantı ayarı yapılamadı."

#, fuzzy
msgid ""
"A network error occurred, or the server closed the connection unexpectedly."
msgstr ""
"Bir ağ hatası meydana geldi, veya sunucu bağlantıyı beklenmeyen bir şekilde "
"kesti."

msgid "Server sent bad data."
msgstr "Sunucu yetersiz veri gönderdi."

msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr "Geçerli bir ses girişi bulunamadı. AVI akışı kesilecek."

msgid "This file contains no playable streams."
msgstr "Dosya çalınabilir akışlar içermiyor."

msgid "This file is invalid and cannot be played."
msgstr "Bu dosya geçersiz ve oynatılamaz."

msgid "Cannot play stream because it is encrypted with PlayReady DRM."
msgstr "Akış çalınamadı çünkü PlayReady DRM ile şifrelenmiş."

msgid "This file is corrupt and cannot be played."
msgstr "Bu dosya bozuk ve oynatılamaz."

msgid "Invalid atom size."
msgstr "Geçersiz atom boyutu"

msgid "This file is incomplete and cannot be played."
msgstr "Dosya eksik ve oynatılamaz."

msgid "The video in this file might not play correctly."
msgstr "Bu dosyadaki vidyo doğru oynatılamıyabilir."

#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr "Bu dosya çok fazla akış içeriyor. Sadece ilki oynatılıyor %d"

msgid ""
"No supported stream was found. You might need to install a GStreamer RTSP "
"extension plugin for Real media streams."
msgstr ""
"Desteklenen bir akış bulunamadı. Real Media akışları için bir GStreamer RTSP "
"uzantı eklentisi kurmalısınız."

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 ""
"Desteklenen akış bulunamadı. Daha fazla aktarım protokolüne izin vermeniz "
"veya doğru GStreamer RTSP uzantı eklentisine onay vermeniz gerekebilir."

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 ""
"Çalma için ses aygıtı açılamıyor. Açık Ses Sistemi'nin bu sürümü, bu öğeyi "
"desteklemiyor."

msgid "Playback is not supported by this audio device."
msgstr "Bu ses aygıtı çalmayı desteklemiyor."

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

msgid "Recording is not supported by this audio device."
msgstr "Bu ses aygıtı kaydetmeyi desteklemiyor."

msgid "Error recording from audio device."
msgstr "Ses aygıtından kaydetmekte hata."

msgid ""
"Could not open audio device for recording. You don't have permission to open "
"the device."
msgstr "Kayıt için aygıtı açamıyor. Aygıtı açmak için yetkiniz yok."

msgid "Could not open audio device for recording."
msgstr "Aygıtı kayıt için açamıyor."

msgid "CoreAudio device not found"
msgstr ""

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

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

msgid "Microphone"
msgstr "Mikrofon"

msgid "Line In"
msgstr "Hat Girişi"

msgid "Internal CD"
msgstr "Dahili CD"

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

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

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

msgid "Codec Loopback"
msgstr "Kodek Geridönüşü"

msgid "SunVTS Loopback"
msgstr "SunVTS Geridönüşü"

msgid "Volume"
msgstr "Ses Girişi"

msgid "Gain"
msgstr "Kazanç"

msgid "Monitor"
msgstr "Hoparlör"

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

msgid "Headphone"
msgstr "Kulaklık"

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

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

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

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

#, c-format
msgid "Error reading %d bytes from device '%s'."
msgstr "%d bayt bilgili '%s' aygıtından okumada hata."

#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr "Aygıtın '%s' birlikte çalışabileceği vidyo kiplerini sıralamada hata"

#, c-format
msgid "Could not map buffers from device '%s'"
msgstr "Aygıttan '%s' bellekler eşlenemiyor"

#, c-format
msgid "The driver of device '%s' does not support the IO method %d"
msgstr "Bu aygıtın sürücüsü '%s' IO yöntemini desteklemiyor %d"

#, c-format
msgid "The driver of device '%s' does not support any known IO method."
msgstr ""
"Bu aygıtın sürücüsü '%s' bilinen IO yöntemlerinden herhangi birisini "
"desteklemiyor."

#, c-format
msgid "Device '%s' is busy"
msgstr "Aygıt '%s' meşgul"

#, c-format
msgid "Device '%s' cannot capture at %dx%d"
msgstr "Aygıt '%s' görüntü yakalayamadı%dx%d"

#, c-format
msgid "Device '%s' cannot capture in the specified format"
msgstr "Aygıt '%s' belirtilen kipte görüntü yakalayamadı"

#, c-format
msgid "Device '%s' does support non-contiguous planes"
msgstr "Aygıt '%s' bitişik olmayan düzlemleri desteklemiyor"

#, c-format
msgid "Could not get parameters on device '%s'"
msgstr "Değiştirgeler aygıttan '%s' alınamıyor"

msgid "Video device did not accept new frame rate setting."
msgstr "Vidyo aygıtı yeni çerçeve oranı ayarlarını kabul etmedi."

msgid "Video device did not provide output format."
msgstr "Video aygıtı çıktı biçimini sağlamadı."

msgid "Video device returned invalid dimensions."
msgstr "Video aygıtı geçersiz boyutlar döndü."

msgid "Video devices uses an unsupported interlacing method."
msgstr "Video aygıtları desteklenmeyen bir birbirine geçme yöntemi kullanıyor."

msgid "Video devices uses an unsupported pixel format."
msgstr "Video aygıtları desteklenmeyen bir piksel biçimini kullanıyor."

msgid "Failed to configure internal buffer pool."
msgstr "İç tampon bellek havuzu yapılandırılamıyor."

msgid "Video device did not suggest any buffer size."
msgstr "Video aygıtı herhangi bir tampon bellek boyutu önermedi."

msgid "No downstream pool to import from."
msgstr "İçeri aktarılacak akıntı havuzu yok."

#, c-format
msgid "Failed to get settings of tuner %d on device '%s'."
msgstr "İstasyon ayarlarını bulma işlemi %d şu aygıtta '%s' başarılamadı."

#, c-format
msgid "Error getting capabilities for device '%s'."
msgstr "Bu aygıt için kapasite bilgisi alınamadı '%s'."

#, c-format
msgid "Device '%s' is not a tuner."
msgstr "Aygıt '%s' bir radyo değil."

#, c-format
msgid "Failed to get radio input on device '%s'. "
msgstr "Radyo giriş değeri şu aygıtta '%s' ayarlanamadı."

#, c-format
msgid "Failed to set input %d on device %s."
msgstr "Giriş değeri olarak bu %d şu aygıtta %s ayarlanamadı."

#, c-format
msgid "Failed to change mute state for device '%s'."
msgstr "Aygıt '%s' susturulmaya ayarlanamadı."

msgid "Failed to allocated required memory."
msgstr "Gerekli bellek ayrılamadı."

msgid "Failed to allocate required memory."
msgstr "Gerekli bellek ayrılamıyor."

#, c-format
msgid "Converter on device %s has no supported input format"
msgstr "Aygıt %s üzerindeki dönüştürücü girdi biçimini desteklemiyor"

#, c-format
msgid "Converter on device %s has no supported output format"
msgstr "Aygıt %s üzerindeki dönüştürücü çıktı biçimini desteklemiyor"

#, c-format
msgid "Encoder on device %s has no supported input format"
msgstr "Aygıt %s üzerindeki kodlayıcı girdi biçimini deskteklemiyor"

#, c-format
msgid "Encoder on device %s has no supported output format"
msgstr "Aygıt %s üzerindeki kodlayıcı çıktı biçimini deskteklemiyor"

msgid "Failed to start decoding thread."
msgstr "Çözme işi başlaması başarısız."

msgid "Failed to process frame."
msgstr "İşlem çerçevesi başarısız."

#, c-format
msgid ""
"Error getting capabilities for device '%s': It isn't a v4l2 driver. Check if "
"it is a v4l1 driver."
msgstr ""
"Şu aygıtın '%s' özelliklerini almada hata: O bir v4l2 sürücüsü değil. Onun "
"bir v4l1 sürücüsü olup olmadığını denetleyin."

#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr "Giriş davranışları sorgusu %d şu aygıtta %s başarılamadı"

#, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr "Radyo istasyonu ayarlarını bulma %d şu aygıtta '%s' başarılamadı."

#, c-format
msgid "Failed to query norm on device '%s'."
msgstr "Şu aygıtta '%s' sorgu normuna erişilemedi."

#, c-format
msgid "Failed getting controls attributes on device '%s'."
msgstr "Denetim davranışları şu aygıtta '%s' bulunamadı."

#, c-format
msgid "Cannot identify device '%s'."
msgstr "Aygıt tanımlanamıyor '%s'."

#, c-format
msgid "This isn't a device '%s'."
msgstr "Bu bir aygıt değil'%s'."

#, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "Şu aygıtı '%s' okuma ve yazma için açamıyor."

#, c-format
msgid "Device '%s' is not a capture device."
msgstr "Aygıt '%s' bir yakalama aygıtı değil."

#, c-format
msgid "Device '%s' is not a output device."
msgstr "Aygıt '%s' bir çıkış aygıtı değil."

#, c-format
msgid "Device '%s' is not a M2M device."
msgstr "Aygıt '%s' bir M2M aygıtı değil."

#, c-format
msgid "Could not dup device '%s' for reading and writing."
msgstr "Okuma ve yazma için '%s' aygıtı kopyalanamadı."

#, c-format
msgid "Failed to set norm for device '%s'."
msgstr "Aygıt için '%s' norm değerleri ayarlanamadı."

#, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr "Aygıt için '%s' radyo frekansları ayarlanamadı."

#, c-format
msgid "Failed to set current tuner frequency for device '%s' to %lu Hz."
msgstr "Aygıt için '%s' radyo frekansı %lu Hz için yapılamadı."

#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr "Aygıt için '%s' güçlü sinyal alımı gerçekleşemedi."

#, c-format
msgid "Failed to get value for control %d on device '%s'."
msgstr "Denetim değeri şuna %d bu aygıtta '%s' ayarlanamadı."

#, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr "Değer %d denetim için %d şu aygıtta '%s' ayarlanamadı."

#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr ""
"Şu aygıtta '%s' geçerli giriş elde edilemedi. O bir radyo aygıtı olabilir."

#, c-format
msgid ""
"Failed to get current output on device '%s'. May be it is a radio device"
msgstr ""
"Şu aygıtta '%s' geçerli giriş elde edilemedi. O bir radyo aygıtı olabilir."

#, c-format
msgid "Failed to set output %d on device %s."
msgstr "Çıkış değeri olarak %d şu aygıtta %s elde edilemedi."

msgid "Changing resolution at runtime is not yet supported."
msgstr "Çalışırken çözünürlüğü değiştirmek henüz desteklenmiyor."

msgid "Cannot operate without a clock"
msgstr "Saat olmadan çalışamaz"

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

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

#~ msgid "Device '%s' does not support video capture"
#~ msgstr "Aygıt '%s' video yakalamayı desteklemiyor"

#~ msgid "Could not establish connection to sound server"
#~ msgstr "Ses sunucusuyla bağlantı kurulumayor"

#~ msgid "Failed to query sound server capabilities"
#~ msgstr "Ses sunucusu olanakları sorgulanamadı"

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

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

#~ msgid "Synth"
#~ msgstr "Synthisizer"

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

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

#~ msgid "Line-in"
#~ msgstr "Hat girişi"

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

#~ msgid "Mixer"
#~ msgstr "Karıştırıcı"

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

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

#~ msgid "In-gain"
#~ msgstr "Kazanç-girişi"

#~ msgid "Out-gain"
#~ msgstr "Kazanç-çıkışı"

#~ msgid "Line-1"
#~ msgstr "Hat-1"

#~ msgid "Line-2"
#~ msgstr "Hat-2"

#~ msgid "Line-3"
#~ msgstr "Hat-3"

#~ msgid "Digital-1"
#~ msgstr "Sayısal-1"

#~ msgid "Digital-2"
#~ msgstr "Sayısal-2"

#~ msgid "Digital-3"
#~ msgstr "Sayısal-3"

#~ msgid "Phone-in"
#~ msgstr "Fono-giriş"

#~ msgid "Phone-out"
#~ msgstr "Fono-çıkış"

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

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

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr "Mikser denetimi 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 ""
#~ "Mikser denetimi için ses aygıtı açılamıyor. Açık Ses Sisteminin bu "
#~ "sürümü, bu öğeyi desteklemiyor."

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

#~ 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 "AUX Out"
#~ msgstr "AUX Çıkış"

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

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

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

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

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

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

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

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

#~ msgid "Microphone Boost"
#~ msgstr "Mikrofon Seviye Yükseltme"

#~ msgid "Diagnostic"
#~ msgstr "Ayarlar"

#~ msgid "Bass Boost"
#~ msgstr "Bass Arttırım"

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

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

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

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

#~ msgid "Simulate Stereo"
#~ msgstr "Stereo Simülasyonu"

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

#~ msgid "Surround Sound"
#~ msgstr "Surround Sesi"

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

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

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

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

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

#~ msgid "None"
#~ msgstr "Hiçbiri"

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

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

#~ msgid "Mute"
#~ msgstr "Sustulurmuş"

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

#~ msgid "Very Low"
#~ msgstr "Çok Kalın"

#~ msgid "Low"
#~ msgstr "D"

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

#~ msgid "High"
#~ msgstr "Tiz"

#~ msgid "Very High"
#~ msgstr "Çok Tiz"

#~ 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 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 Konnektö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 Ö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ışı Dağıt"

#~ msgid "Downmix"
#~ msgstr "Miks Edilmiş"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Sanal Mikser Girişi"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Sanal Mikser Çıkışı"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Sanal Mikser Kanalları"

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

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

#~ msgid "Got unexpected frame size of %u instead of %u."
#~ msgstr "Beklenmeyen bir çerçevece boyutu %u bunun yerine %u görüntülendi."

#~ msgid "Error reading %d bytes on device '%s'."
#~ msgstr "%d baytı şu aygıtta '%s' okumada hata."

#~ msgid "Could not enqueue buffers in device '%s'."
#~ msgstr "Aygıtta '%s' arabellek kuyruğa sokulamıyor."

#~ msgid "Failed trying to get video frames from device '%s'."
#~ msgstr "Aygıttan device '%s' vidyo çerçeveleri alınamadı."

#~ msgid "Failed after %d tries. device %s. system error: %s"
#~ msgstr "Şu denemeden sonra %d başarılamadı. aygıt %s. sistem hatası: %s"

#~ msgid ""
#~ "The buffer type is not supported, or the index is out of bounds, or no "
#~ "buffers have been allocated yet, or the userptr or length are invalid. "
#~ "device %s"
#~ msgstr ""
#~ "Arabellek türü desteklenmiyor, veya içerik bir yere ait değil, veya "
#~ "arabellekler henüz ayrılmamış, veya userptr veya uzunluk geçersiz. aygıt. "
#~ "%s"

#~ msgid ""
#~ "Failed trying to get video frames from device '%s'. Not enough memory."
#~ msgstr "Vidyo çervevesi aygıttan '%s' alınamadı. Yetersiz bellek."

#~ msgid "insufficient memory to enqueue a user pointer buffer. device %s."
#~ msgstr ""
#~ "kullanıcı arabelleğini kuyruğa sokmak için yetersiz bellek. aygıt %s."

#~ msgid "No free buffers found in the pool at index %d."
#~ msgstr "Dizindeki %d havuzda boş bellek bulunamadı."

#~ msgid "Could not get buffers from device '%s'."
#~ msgstr "Arabellek aygıttan '%s' alınamıyor."

#~ msgid "Could not get enough buffers from device '%s'."
#~ msgstr "Yeterli bellek aygıttan '%s' alınamıyor."

#~ msgid "Error starting streaming capture from device '%s'."
#~ msgstr "Aygıttan '%s' akan görüntü başlatılamadı."

#~ msgid "Error stopping streaming capture from device '%s'."
#~ msgstr "Aygıttan '%s' akan görüntü durdurulamadı."
