# Përkthimi i mesazheve të gst-plugins në shqip.
# Copyright (C) 2004 Free Software Foundation, Inc.
# Laurent Dhima <laurenti@alblinux.net>, 2004.
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins 0.8.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2014-02-08 12:24+0100\n"
"PO-Revision-Date: 2004-08-07 20:29+0200\n"
"Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
"Language-Team: Albanian <begraj@hotmail.com>\n"
"Language: sq\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

msgid "Jack server not found"
msgstr ""

msgid "Failed to decode JPEG image"
msgstr ""

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

#, fuzzy
msgid "Could not connect to server"
msgstr "E pamundur mbyllja e dispozitivit të kontrollit \"%s\"."

msgid "No URL set."
msgstr ""

#, fuzzy
msgid "Server does not support seeking."
msgstr "Dispozitivi juaj OSS mund të mos provohet korrektësisht"

#, fuzzy
msgid "Could not resolve server name."
msgstr "E pamundur mbyllja e dispozitivit të kontrollit \"%s\"."

#, fuzzy
msgid "Could not establish connection to server."
msgstr "E pamundur mbyllja e dispozitivit të kontrollit \"%s\"."

msgid "Secure connection setup failed."
msgstr ""

msgid ""
"A network error occured, or the server closed the connection unexpectedly."
msgstr ""

msgid "Server sent bad data."
msgstr ""

msgid "Internal data stream error."
msgstr ""

msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr "Input audio i gabuar ose mungon, stream AVI mund të jetë i dëmtuar."

msgid "This file contains no playable streams."
msgstr ""

msgid "This file is invalid and cannot be played."
msgstr ""

msgid "Cannot play stream because it is encrypted with PlayReady DRM."
msgstr ""

msgid "This file is corrupt and cannot be played."
msgstr ""

msgid "Invalid atom size."
msgstr ""

msgid "This file is incomplete and cannot be played."
msgstr ""

msgid "The video in this file might not play correctly."
msgstr ""

#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr ""

msgid ""
"No supported stream was found. You might need to install a GStreamer RTSP "
"extension plugin for Real media streams."
msgstr ""

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

msgid "Internal data flow error."
msgstr ""

msgid ""
"Could not open audio device for playback. Device is being used by another "
"application."
msgstr ""

msgid ""
"Could not open audio device for playback. You don't have permission to open "
"the device."
msgstr ""

#, fuzzy
msgid "Could not open audio device for playback."
msgstr "E pamundur hapja e dispozitivit të zërit \"%s\" për shkrim."

msgid ""
"Could not open audio device for playback. This version of the Open Sound "
"System is not supported by this element."
msgstr ""

msgid "Playback is not supported by this audio device."
msgstr ""

msgid "Audio playback error."
msgstr ""

msgid "Recording is not supported by this audio device."
msgstr ""

msgid "Error recording from audio device."
msgstr ""

msgid ""
"Could not open audio device for recording. You don't have permission to open "
"the device."
msgstr ""

#, fuzzy
msgid "Could not open audio device for recording."
msgstr "I pamundur hapja e dispozitivit CD për lexim."

#, fuzzy
msgid "Record Source"
msgstr "Regjistrimi"

msgid "Microphone"
msgstr "Mikrofoni"

#, fuzzy
msgid "Line In"
msgstr "Linja-hyrje"

msgid "Internal CD"
msgstr ""

msgid "SPDIF In"
msgstr ""

msgid "AUX 1 In"
msgstr ""

msgid "AUX 2 In"
msgstr ""

msgid "Codec Loopback"
msgstr ""

msgid "SunVTS Loopback"
msgstr ""

msgid "Volume"
msgstr "Volumi"

msgid "Gain"
msgstr ""

msgid "Monitor"
msgstr "Ekrani"

#, fuzzy
msgid "Built-in Speaker"
msgstr "Zë folës"

msgid "Headphone"
msgstr ""

msgid "Line Out"
msgstr ""

msgid "SPDIF Out"
msgstr ""

msgid "AUX 1 Out"
msgstr ""

msgid "AUX 2 Out"
msgstr ""

#, fuzzy, c-format
msgid "Error reading %d bytes from device '%s'."
msgstr "E pamundur marrja e buffers nga dispozitivi \"%s\"."

#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr ""

#, fuzzy, c-format
msgid "Could not map buffers from device '%s'"
msgstr "E pamundur marrja e buffers nga dispozitivi \"%s\"."

#, c-format
msgid "The driver of device '%s' does not support the IO method %d"
msgstr ""

#, c-format
msgid "The driver of device '%s' does not support any known IO method."
msgstr ""

#, fuzzy, c-format
msgid "Device '%s' does not support video capture"
msgstr "Dispozitivi \"%s\" nuk është një dispozitiv marrje."

#, fuzzy, c-format
msgid "Device '%s' is busy"
msgstr "Dispozitivi \"%s\" nuk është një dispozitiv marrje."

#, fuzzy, c-format
msgid "Device '%s' cannot capture at %dx%d"
msgstr "Dispozitivi \"%s\" nuk është një dispozitiv marrje."

#, fuzzy, c-format
msgid "Device '%s' cannot capture in the specified format"
msgstr "Dispozitivi \"%s\" nuk është një dispozitiv marrje."

#, fuzzy, c-format
msgid "Could not get parameters on device '%s'"
msgstr "E pamundur marrja e buffers nga dispozitivi \"%s\"."

msgid "Video device did not accept new frame rate setting."
msgstr ""

msgid "Video device could not create buffer pool."
msgstr ""

#, fuzzy, c-format
msgid "Failed to get settings of tuner %d on device '%s'."
msgstr "E pamundur marrja e buffers të mjaftueshëm nga dispozitivi \"%s\"."

#, fuzzy, c-format
msgid "Error getting capabilities for device '%s'."
msgstr "E pamundur marrja e buffers nga dispozitivi \"%s\"."

#, fuzzy, c-format
msgid "Device '%s' is not a tuner."
msgstr "Dispozitivi \"%s\" nuk është një dispozitiv marrje."

#, fuzzy, c-format
msgid "Failed to get radio input on device '%s'. "
msgstr "E pamundur mbyllja e dispozitivit audio \"%s\"."

#, fuzzy, c-format
msgid "Failed to set input %d on device %s."
msgstr "E pamundur mbyllja e dispozitivit audio \"%s\"."

#, fuzzy, c-format
msgid "Failed to change mute state for device '%s'."
msgstr "E pamundur marrja e buffers nga dispozitivi \"%s\"."

#, fuzzy, c-format
msgid "Cannot identify device '%s'."
msgstr "I pamundur shkrimi në dispozitivin \"%s\"."

#, c-format
msgid ""
"Error getting capabilities for device '%s': It isn't a v4l2 driver. Check if "
"it is a v4l1 driver."
msgstr ""

#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr ""

#, fuzzy, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr "E pamundur marrja e buffers të mjaftueshëm nga dispozitivi \"%s\"."

#, c-format
msgid "Failed to query norm on device '%s'."
msgstr ""

#, c-format
msgid "Failed getting controls attributes on device '%s'."
msgstr ""

#, c-format
msgid "This isn't a device '%s'."
msgstr ""

#, fuzzy, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "E pamundur hapja e dispozitivit \"%s\" për lexim dhe shkrim."

#, fuzzy, c-format
msgid "Device '%s' is not a capture device."
msgstr "Dispozitivi \"%s\" nuk është një dispozitiv marrje."

#, fuzzy, c-format
msgid "Device '%s' is not a output device."
msgstr "Dispozitivi \"%s\" nuk është një dispozitiv marrje."

#, fuzzy, c-format
msgid "Failed to set norm for device '%s'."
msgstr "E pamundur marrja e buffers nga dispozitivi \"%s\"."

#, fuzzy, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr "E pamundur marrja e buffers të mjaftueshëm nga dispozitivi \"%s\"."

#, c-format
msgid "Failed to set current tuner frequency for device '%s' to %lu Hz."
msgstr ""

#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr ""

#, fuzzy, c-format
msgid "Failed to get value for control %d on device '%s'."
msgstr "E pamundur mbyllja e dispozitivit të kontrollit \"%s\"."

#, fuzzy, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr "E pamundur mbyllja e dispozitivit të kontrollit \"%s\"."

#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr ""

#, fuzzy, c-format
msgid ""
"Failed to get current output on device '%s'. May be it is a radio device"
msgstr "E pamundur marrja e buffers të mjaftueshëm nga dispozitivi \"%s\"."

#, fuzzy, c-format
msgid "Failed to set output %d on device %s."
msgstr "E pamundur mbyllja e dispozitivit audio \"%s\"."

msgid "Changing resolution at runtime is not yet supported."
msgstr ""

msgid "Cannot operate without a clock"
msgstr ""

#, fuzzy
#~ msgid "Failed trying to get video frames from device '%s'."
#~ msgstr "E pamundur marrja e buffers të mjaftueshëm nga dispozitivi \"%s\"."

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

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

#~ msgid "Synth"
#~ msgstr "Sintetizuesi"

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

#~ msgid "Speaker"
#~ msgstr "Zë folës"

#~ msgid "Line-in"
#~ msgstr "Linja-hyrje"

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

#~ msgid "Mixer"
#~ msgstr "Kontrolli i volumit"

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

#~ msgid "Record"
#~ msgstr "Regjistrimi"

#~ msgid "In-gain"
#~ msgstr "In-gain"

#~ msgid "Out-gain"
#~ msgstr "Out-gain"

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

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

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

#~ msgid "Digital-1"
#~ msgstr "Dixhitale-1"

#~ msgid "Digital-2"
#~ msgstr "Dixhitale-2"

#~ msgid "Digital-3"
#~ msgstr "Dixhitale-3"

#~ msgid "Phone-in"
#~ msgstr "Phone-hyrja"

#~ msgid "Phone-out"
#~ msgstr "Phone-dalja"

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

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

#, fuzzy
#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr "E pamundur hapja e dispozitivit të zërit \"%s\" për shkrim."

#, fuzzy
#~ msgid "Rear"
#~ msgstr "Regjistrimi"

#, fuzzy
#~ msgid "Side"
#~ msgstr "Video"

#, fuzzy
#~ msgid "Video In"
#~ msgstr "Video"

#, fuzzy
#~ msgid "Record Gain"
#~ msgstr "Regjistrimi"

#, fuzzy
#~ msgid "Output Gain"
#~ msgstr "Out-gain"

#, fuzzy
#~ msgid "Microphone Boost"
#~ msgstr "Mikrofoni"

#, fuzzy
#~ msgid "Monitor Source"
#~ msgstr "Ekrani"

#, fuzzy
#~ msgid "Microphone Gain"
#~ msgstr "Mikrofoni"

#, fuzzy
#~ msgid "Speaker Source"
#~ msgstr "Zë folës"

#, fuzzy
#~ msgid "Microphone Source"
#~ msgstr "Mikrofoni"

#, fuzzy
#~ msgid "Microphone 1"
#~ msgstr "Mikrofoni"

#, fuzzy
#~ msgid "Microphone 2"
#~ msgstr "Mikrofoni"

#, fuzzy
#~ msgid "Digital Out"
#~ msgstr "Dixhitale-1"

#, fuzzy
#~ msgid "Digital In"
#~ msgstr "Dixhitale-1"

#, fuzzy
#~ msgid "Front Panel Microphone"
#~ msgstr "Mikrofoni"

#, fuzzy
#~ msgid "Could not enqueue buffers in device '%s'."
#~ msgstr "E pamundur marrja e buffers nga dispozitivi \"%s\"."

#~ msgid ""
#~ "No usable colorspace element could be found.\n"
#~ "Please install one and restart."
#~ msgstr ""
#~ "Nuk arrin të gjehet asnjë element ngjyra e hapësirës.\n"
#~ "Ju lutem instaloni një dhe rinisni."

#~ msgid ""
#~ "The %s element could not be found. This element is essential for "
#~ "playback. Please install the right plug-in and verify that it works by "
#~ "running 'gst-inspect %s'"
#~ msgstr ""
#~ "E pamundur gjetja e elementit %s. Ky element është thelbësor për "
#~ "playback. Ju lutem instaloni plug-in e duhur dhe kontrollo funksionimin "
#~ "duke ekzekutuar 'gst-inspect %s'"

#~ msgid "Device is open."
#~ msgstr "Dispozitivi është i hapur."

#~ msgid "Device is not open."
#~ msgstr "Dispozitivi nuk është hapur."

#~ msgid "No device specified."
#~ msgstr "Nuk është përcaktuar asnjë dispozitiv."

#~ msgid "Could not close vfs file \"%s\"."
#~ msgstr "E pamundur mbyllja e file vfs \"%s\"."

#~ msgid "No filename given"
#~ msgstr "Nuk është dhënë asnjë emër file"

#~ msgid "Could not open vfs file \"%s\" for writing: %s."
#~ msgstr "E pamundur hapja e file vfs \"%s\" për shkrim: %s."

#, fuzzy
#~ msgid "No filename given."
#~ msgstr "Nuk është dhënë asnjë emër file"

#~ msgid "Could not open vfs file \"%s\" for reading."
#~ msgstr "E pamundur hapja e file vfs \"%s\" për lexim."

#~ msgid "Your OSS device could not be probed correctly"
#~ msgstr "Dispozitivi juaj OSS mund të mos provohet korrektësisht"

#~ msgid "Could not open device \"%s\" for reading."
#~ msgstr "E pamundur hapja e dispozitivit \"%s\" për lexim."

#~ msgid "Could not open device \"%s\" for writing."
#~ msgstr "E pamundur hapja e dispozitivit \"%s\" për shkrim."

#~ msgid "Device \"%s\" does not exist."
#~ msgstr "Dispozitivi \"%s\" nuk ekziston."

#~ msgid "Could not access device \"%s\", check its permissions."
#~ msgstr ""
#~ "E pamundur futja në dispozitivin \"%s\", kontrollo të drejtat e tij."

#~ msgid "OSS device \"%s\" is already in use by another program."
#~ msgstr ""
#~ "Dispozitivi OSS \"%s\" është duke u përdorur nga një tjetër program."

#~ msgid "Could not close video device \"%s\"."
#~ msgstr "E pamundur mbyllja e dispozitivit video \"%s\"."

#~ msgid "Could not open video device \"%s\" for writing."
#~ msgstr "E pamundur hapja e dispozitivit video \"%s\" për shkrim."

#~ msgid "Could not set audio device \"%s\" to %d Hz."
#~ msgstr "I pamundur rregullimi i dispozitivit audio \"%s\" në %d Hz."

#~ msgid "Could not configure audio device \"%s\"."
#~ msgstr "I pamundur konfigurimi i dispozitivit të zërit \"%s\"."

#~ msgid "Could not open control device \"%s\" for writing."
#~ msgstr "E pamundur hapja e dispozitivit të kontrollit \"%s\" për shkrim."

#~ msgid "Could not write to file \"%s\"."
#~ msgstr "I pamundur shkrimi tek file \"%s\"."

#~ msgid "No filename specified."
#~ msgstr "Nuk është përcaktuar emri i file."

#~ msgid "Could not open file \"%s\" for reading."
#~ msgstr "E pamundur hapja e file \"%s\" për lexim."

#~ msgid "Error closing file \"%s\"."
#~ msgstr "Gabim gjatë mbylljes së file \"%s\"."

#~ msgid "Could not open file \"%s\" for writing."
#~ msgstr "E pamundur hapja e file \"%s\" në shkrim."
