# Swedish messages for gst-plugins-good.
# Copyright © 2007-2016 Free Software Foundation, Inc.
# This file is distributed under the same license as the gst-plugins-good package.
# Christian Rose <menthos@menthos.com>, 2004.
# Daniel Nylander <po@danielnylander.se>, 2007, 2008, 2009, 2010, 2011.
# Sebastian Rasmussen <sebras@gmail.com>, 2014, 2015, 2016.
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 1.7.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2016-11-17 14:58+0200\n"
"PO-Revision-Date: 2016-02-20 16:13+0100\n"
"Last-Translator: Sebastian Rasmussen <sebras@gmail.com>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.7\n"

msgid "Jack server not found"
msgstr "Jack-server hittades ej"

msgid "Failed to decode JPEG image"
msgstr "Misslyckades med att avkoda JPEG-bild"

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

msgid "Could not connect to server"
msgstr "Kunde inte ansluta till servern"

msgid "No URL set."
msgstr "Ingen URL inställd."

msgid "Server does not support seeking."
msgstr "Servern stöder inte sökning/spolning."

msgid "Could not resolve server name."
msgstr "Kunde inte slå upp servernamnet."

msgid "Could not establish connection to server."
msgstr "Kunde inte etablera anslutning till servern."

msgid "Secure connection setup failed."
msgstr "Säker anslutning misslyckades."

msgid ""
"A network error occurred, or the server closed the connection unexpectedly."
msgstr "Ett nätverksfel inträffade eller servern stängde anslutningen oväntat."

msgid "Server sent bad data."
msgstr "Servern skickade felaktigt data."

msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr "Inget eller ogiltigt ingångsljud. AVI-strömmen kommer att skadas."

msgid "This file contains no playable streams."
msgstr "Den här filen innehåller inga uppspelningsbara strömmar."

msgid "This file is invalid and cannot be played."
msgstr "Den här filen är ogiltig och kan inte spelas upp."

msgid "Cannot play stream because it is encrypted with PlayReady DRM."
msgstr "Kan ej spela ström då den är krypterad med PlayReady DRM."

msgid "This file is corrupt and cannot be played."
msgstr "Den här filen är skadad och kan inte spelas upp."

msgid "Invalid atom size."
msgstr "Ogiltig atomstorlek."

msgid "This file is incomplete and cannot be played."
msgstr "Den här filen är inte fullständig och kan inte spelas upp."

msgid "The video in this file might not play correctly."
msgstr "Videon i den här filen kanske inte kan spelas upp korrekt."

#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr ""
"Den här filen innehåller för många strömmar. Spelar endast upp de första %d"

msgid ""
"No supported stream was found. You might need to install a GStreamer RTSP "
"extension plugin for Real media streams."
msgstr ""
"Ingen ström som stöds hittades. Du kanske behöver installera en GStreamer-"
"insticksmodul för RTSP för Real Media-strömmar."

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 ""
"Ingen ström som stöds hittades. Du kanske behöver tillåta fler "
"transportprotokoll eller så saknar du kanske det rätta GStreamer-tillägget "
"för RTSP."

msgid ""
"Could not open audio device for playback. Device is being used by another "
"application."
msgstr ""
"Kunde inte öppna ljudenheten för uppspelning. Enheten används av ett annat "
"program."

msgid ""
"Could not open audio device for playback. You don't have permission to open "
"the device."
msgstr ""
"Kunde inte öppna ljudenheten för uppspelning. Du har inte behörighet att "
"öppna enheten."

msgid "Could not open audio device for playback."
msgstr "Kunde inte öppna ljudenheten för uppspelning."

msgid ""
"Could not open audio device for playback. This version of the Open Sound "
"System is not supported by this element."
msgstr ""
"Kunde inte öppna ljudenheten för uppspelning. Denna version av Open Sound "
"System stöds inte av detta element."

msgid "Playback is not supported by this audio device."
msgstr "Uppspelning stöds inte av denna ljudenhet."

msgid "Audio playback error."
msgstr "Fel vid ljuduppspelning."

msgid "Recording is not supported by this audio device."
msgstr "Inspelning stöds inte av denna ljudenhet."

msgid "Error recording from audio device."
msgstr "Fel vid inspelning från ljudenheten."

msgid ""
"Could not open audio device for recording. You don't have permission to open "
"the device."
msgstr ""
"Kunde inte öppna ljudenheten för inspelning. Du har inte behörighet att "
"öppna enheten."

msgid "Could not open audio device for recording."
msgstr "Kunde inte öppna ljudenheten för inspelning."

msgid "CoreAudio device not found"
msgstr "CoreAudio-enhet hittades inte"

msgid "CoreAudio device could not be opened"
msgstr "CoreAudio-enhet kunde inte öppnas"

msgid "Record Source"
msgstr "Inspelningskälla"

msgid "Microphone"
msgstr "Mikrofon"

msgid "Line In"
msgstr "Linje-In"

msgid "Internal CD"
msgstr "Intern cd-spelare"

msgid "SPDIF In"
msgstr "SPDIF In"

msgid "AUX 1 In"
msgstr "AUX 1 In"

msgid "AUX 2 In"
msgstr "AUX 2 In"

msgid "Codec Loopback"
msgstr "Omkodar-återkopplingsslinga"

msgid "SunVTS Loopback"
msgstr "SunVTS-återkopplingsslinga"

msgid "Volume"
msgstr "Volym"

msgid "Gain"
msgstr "Förstärk"

msgid "Monitor"
msgstr "Monitor"

msgid "Built-in Speaker"
msgstr "Inbyggd högtalare"

msgid "Headphone"
msgstr "Hörlur"

msgid "Line Out"
msgstr "Linje ut"

msgid "SPDIF Out"
msgstr "SPDIF ut"

msgid "AUX 1 Out"
msgstr "AUX 1 ut"

msgid "AUX 2 Out"
msgstr "AUX 2 ut"

#, c-format
msgid "Error reading %d bytes from device '%s'."
msgstr "Fel vid läsning av %d byte från enheten \"%s\"."

#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr ""
"Misslyckades med att räkna upp möjliga videoformat som enheten \"%s\" kan "
"arbeta med"

#, c-format
msgid "Could not map buffers from device '%s'"
msgstr "Kunde inte mappa buffertar från enheten \"%s\"."

#, c-format
msgid "The driver of device '%s' does not support the IO method %d"
msgstr "Drivrutinen för enheten \"%s\" stöder inte IO-metod %d"

#, c-format
msgid "The driver of device '%s' does not support any known IO method."
msgstr "Drivrutinen för enheten \"%s\" stöder inte någon känd IO-metod."

#, c-format
msgid "Device '%s' is busy"
msgstr "Enheten \"%s\" är upptagen"

#, c-format
msgid "Device '%s' cannot capture at %dx%d"
msgstr "Enheten \"%s\" kan inte fånga i %dx%d"

#, c-format
msgid "Device '%s' cannot capture in the specified format"
msgstr "Enheten \"%s\" kan inte fånga i det angivna formatet"

#, c-format
msgid "Device '%s' does support non-contiguous planes"
msgstr "Enheten \"%s\" stöder inte icke-kontinuerliga plan"

#, c-format
msgid "Could not get parameters on device '%s'"
msgstr "Kunde inte få tag i parametrar på enheten \"%s\""

msgid "Video device did not accept new frame rate setting."
msgstr "Videoenheten accepterade inte ny inställning för bildfrekvens."

msgid "Video device did not provide output format."
msgstr "Videoenheten tillhandahöll inget utgångsformat."

msgid "Video device returned invalid dimensions."
msgstr "Videoenheten returnerade ogiltiga dimensioner."

msgid "Video devices uses an unsupported interlacing method."
msgstr "Videoenheter använder en sammanflätningsmetod som ej stöds."

msgid "Video devices uses an unsupported pixel format."
msgstr "Videoenheter använder ett pixel-format som ej stöds."

msgid "Failed to configure internal buffer pool."
msgstr "Misslyckades med att konfigurera intern buffert-pool."

msgid "Video device did not suggest any buffer size."
msgstr "Videoenheten föreslog inte ny buffertstorlek."

msgid "No downstream pool to import from."
msgstr "Ingen nedströms-pool att importera från."

#, c-format
msgid "Failed to get settings of tuner %d on device '%s'."
msgstr ""
"Misslyckades med att få tag i inställningarna för mottagare %d på enheten "
"\"%s\"."

#, c-format
msgid "Error getting capabilities for device '%s'."
msgstr "Fel vid läsning av förmågor för enheten \"%s\"."

#, c-format
msgid "Device '%s' is not a tuner."
msgstr "Enheten \"%s\" är ingen mottagare."

#, c-format
msgid "Failed to get radio input on device '%s'. "
msgstr "Kunde inte ställa in radioingång på enheten \"%s\"."

#, c-format
msgid "Failed to set input %d on device %s."
msgstr "Kunde inte ställa in ingång %d på enheten %s."

#, c-format
msgid "Failed to change mute state for device '%s'."
msgstr "Misslyckades med att ändra på ljudlös-läge för enheten \"%s\"."

msgid "Failed to allocated required memory."
msgstr "Misslyckades att allokera begärt minne."

msgid "Failed to allocate required memory."
msgstr "Misslyckades med att allokera begärt minne."

#, c-format
msgid "Converter on device %s has no supported input format"
msgstr "Konvertorn på enheten %s har inget ingångsformat som stöds"

#, c-format
msgid "Converter on device %s has no supported output format"
msgstr "Konvertorn på enheten %s har inget utgångsformat som stöds"

#, c-format
msgid "Encoder on device %s has no supported input format"
msgstr "Kodaren på enheten %s har inget ingångsformat som stöds"

#, c-format
msgid "Encoder on device %s has no supported output format"
msgstr "Kodaren på enheten %s har inget utgångsformat som stöds"

msgid "Failed to start decoding thread."
msgstr "Misslyckades med att starta avkodningstråd."

msgid "Failed to process frame."
msgstr "Misslyckades att behandla ram."

#, c-format
msgid ""
"Error getting capabilities for device '%s': It isn't a v4l2 driver. Check if "
"it is a v4l1 driver."
msgstr ""
"Fel vid läsning av förmågor för enheten \"%s\": Det är inte en v4l2-"
"drivrutin. Kontrollera om det är en v4l1-drivrutin."

#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr "Misslyckades med att fråga efter attribut för ingång %d i enheten %s"

#, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr ""
"Misslyckades med att få tag i inställningen för mottagare %d på enheten \"%s"
"\"."

#, c-format
msgid "Failed to query norm on device '%s'."
msgstr "Misslyckades med att fråga efter norm på enheten \"%s\"."

#, c-format
msgid "Failed getting controls attributes on device '%s'."
msgstr "Misslyckades med att få tag på kontrollattributen på enheten \"%s\"."

#, c-format
msgid "Cannot identify device '%s'."
msgstr "Kunde inte identifiera enheten \"%s\"."

#, c-format
msgid "This isn't a device '%s'."
msgstr "Det här är inte en enhet \"%s\"."

#, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "Kunde inte öppna enheten \"%s\" för läsning och skrivning."

#, c-format
msgid "Device '%s' is not a capture device."
msgstr "Enheten \"%s\" är ingen fångstenhet."

#, c-format
msgid "Device '%s' is not a output device."
msgstr "Enheten \"%s\" är ingen utgångsenhet."

#, c-format
msgid "Device '%s' is not a M2M device."
msgstr "Enheten \"%s\" är ingen M2M-enhet."

#, c-format
msgid "Could not dup device '%s' for reading and writing."
msgstr "Kunde inte duplicera enheten \"%s\" för läsning och skrivning."

#, c-format
msgid "Failed to set norm for device '%s'."
msgstr "Misslyckades med att ställa in norm för enheten \"%s\"."

#, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr ""
"Misslyckades med att gå tag på aktuell mottagarfrekvens för enheten \"%s\"."

#, c-format
msgid "Failed to set current tuner frequency for device '%s' to %lu Hz."
msgstr ""
"Misslyckades med att ställa in aktuell mottagarfrekvens för enheten \"%s\" "
"till %lu Hz."

#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr "Misslyckades med att få tag på signalstyrka för enheten \"%s\"."

#, c-format
msgid "Failed to get value for control %d on device '%s'."
msgstr ""
"Misslyckades med att få tag på värdet för kontrollen %d på enheten \"%s\"."

#, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr "Kunde inte ställa in värdet %d för kontrollen %d på enheten \"%s\"."

#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr ""
"Misslyckades med att få tag på aktuell ingång på enheten \"%s\". Kan vara en "
"radioenhet"

#, c-format
msgid ""
"Failed to get current output on device '%s'. May be it is a radio device"
msgstr ""
"Misslyckades med att få tag på aktuell utgång på enheten \"%s\". Kan vara en "
"radioenhet"

#, c-format
msgid "Failed to set output %d on device %s."
msgstr "Misslyckades med att ställa in utgång %d på enheten %s."

msgid "Changing resolution at runtime is not yet supported."
msgstr "Ändring av upplösning vid körtid stöds inte än."

msgid "Cannot operate without a clock"
msgstr "Kan inte fungera utan en klocka"

#~ msgid "Internal data stream error."
#~ msgstr "Internt fel i dataström."

#~ msgid "Internal data flow error."
#~ msgstr "Internt fel i dataflöde."

#~ msgid "Device '%s' does not support video capture"
#~ msgstr "Enheten \"%s\" stöder inte videoinfångning."
