# Danish translation of gst-plugins-good.
# Copyright (C) 2016 gst.
# This file is distributed under the same license as the gst-plugins-good package.
# Mogens Jaeger <mogens@jaeger.tf>, 2007.
# Joe Hansen <joedalton2@yahoo.dk>, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016.
#
# gain -> forhøjelse
# boost -> øgning?
#
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good-1.7.2\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2017-01-30 15:32+0200\n"
"PO-Revision-Date: 2016-03-27 23:54+0200\n"
"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Language: da\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 "Jack-server blev ikke fundet"

msgid "Failed to decode JPEG image"
msgstr "Mislykkedes i at afkode JPEG-billede"

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

msgid "Could not connect to server"
msgstr "Kunne ikke forbinde til server"

msgid "No URL set."
msgstr "Ingen adresse angivet."

msgid "Server does not support seeking."
msgstr "Server understøtter ikke søgning."

msgid "Could not resolve server name."
msgstr "Kunne ikke slå servernavn op."

msgid "Could not establish connection to server."
msgstr "Kunne ikke skabe kontakt til serveren."

msgid "Secure connection setup failed."
msgstr "Opsætning af sikker forbindelse mislykkedes."

msgid ""
"A network error occurred, or the server closed the connection unexpectedly."
msgstr ""
"Der opstod en netværksfejl, eller serveren lukkede uventet forbindelsen."

msgid "Server sent bad data."
msgstr "Server sendte ugyldige data."

msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr "Ingen eller defekt inddatalyd, AVI-sekvens vil blive ødelagt."

msgid "This file contains no playable streams."
msgstr "Denne fil indeholder ingen spilbar strøm."

msgid "This file is invalid and cannot be played."
msgstr "Denne fil er ufuldstændig og kan ikke afspilles."

msgid "Cannot play stream because it is encrypted with PlayReady DRM."
msgstr "Kan ikke afspille strøm, da den er krypteret med PlayReady DRM."

msgid "This file is corrupt and cannot be played."
msgstr "Denne fil er ødelagt og kan ikke afspilles."

msgid "Invalid atom size."
msgstr "Ugyldig atomstørrelse."

msgid "This file is incomplete and cannot be played."
msgstr "Denne fil er ufuldstændig og kan ikke afspilles."

msgid "The video in this file might not play correctly."
msgstr "Videoen i denne fil afspilles måske ikke korrekt."

# hvad er %d i dette program? Umiddelbart ville jeg tro det skulle
# hedde, "Afpiller kun første %d" men det kommer selvfølgelig an på 
# sammenhængen.
#, c-format
msgid "This file contains too many streams. Only playing first %d"
msgstr "Denne fil indeholder for mange strømme. Afspil først kun %d"

msgid ""
"No supported stream was found. You might need to install a GStreamer RTSP "
"extension plugin for Real media streams."
msgstr ""
"Ingen understøttet strøm blev fundet. Du skal måske installere et "
"udvidelsesmodul for GStreamer RTSP til Real media-strømme."

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 understøttet strøm blev fundet. Du mangler måske at tillade yderligere "
"transportprotokoller eller mangler måske det korrekte udvidelsesmodul til "
"GStreamer RTSP."

msgid ""
"Could not open audio device for playback. Device is being used by another "
"application."
msgstr ""
"Kunne ikke åbne lydenhed til afspilning. Enheden anvendes af et andet "
"program."

msgid ""
"Could not open audio device for playback. You don't have permission to open "
"the device."
msgstr ""
"Kunne ikke åbne lydenhed til afspilning. Du har ikke rettighed til at åbne "
"enheden."

msgid "Could not open audio device for playback."
msgstr "Kunne ikke åbne enhed til afspilning."

msgid ""
"Could not open audio device for playback. This version of the Open Sound "
"System is not supported by this element."
msgstr ""
"Kunne ikke åbne lydenhed til afspilning. Denne version af Open Sound System "
"er ikke understøttet af dette element."

msgid "Playback is not supported by this audio device."
msgstr "Afspilning er ikke understøttet af denne lydenhed."

msgid "Audio playback error."
msgstr "Fejl ved lydafspilning."

msgid "Recording is not supported by this audio device."
msgstr "Optagelse er ikke understøttet af denne lydenhed."

msgid "Error recording from audio device."
msgstr "Fejl ved optagelse fra lydenhed."

msgid ""
"Could not open audio device for recording. You don't have permission to open "
"the device."
msgstr ""
"Kunne ikke åbne lydenhed til optagelse. Du har ikke rettighed til at åbne "
"enheden."

msgid "Could not open audio device for recording."
msgstr "Kunne ikke åbne lydenhed til optagelse."

msgid "CoreAudio device not found"
msgstr "CoreAudio-enhed blev ikke fundet"

msgid "CoreAudio device could not be opened"
msgstr "CoreAudio-enhed kunne ikke åbnes"

msgid "Record Source"
msgstr "Optagelseskilde"

msgid "Microphone"
msgstr "Mikrofon"

msgid "Line In"
msgstr "Linje ind"

msgid "Internal CD"
msgstr "Intern cd"

msgid "SPDIF In"
msgstr "SPDIF ind"

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

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

msgid "Codec Loopback"
msgstr "Codec-loopback"

msgid "SunVTS Loopback"
msgstr "SunVTS-loopback"

msgid "Volume"
msgstr "Lydstyrke"

msgid "Gain"
msgstr "Forhøjelse"

msgid "Monitor"
msgstr "Monitor"

msgid "Built-in Speaker"
msgstr "Indbygget højtaler"

msgid "Headphone"
msgstr "Hovedtelefon"

msgid "Line Out"
msgstr "Linje ud"

msgid "SPDIF Out"
msgstr "SPDIF ud"

msgid "AUX 1 Out"
msgstr "AUX 1 ud"

msgid "AUX 2 Out"
msgstr "AUX 2 ud"

#, c-format
msgid "Error reading %d bytes from device '%s'."
msgstr "Fejl ved læsning af %d byte på enhed »%s«."

#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr ""
"Kunne ikke nummerere mulig videoformater som enhed »%s« kan fungere med"

#, c-format
msgid "Could not map buffers from device '%s'"
msgstr "Kunne ikke afbilde mellemlager fra enhed »%s«"

#, c-format
msgid "The driver of device '%s' does not support the IO method %d"
msgstr "Driveren til enhed »%s« understøtter ikke IO-metoden %d"

#, c-format
msgid "The driver of device '%s' does not support any known IO method."
msgstr "Driveren til enhed »%s« understøtter ingen kendt IO-metode."

#, c-format
msgid "Device '%s' is busy"
msgstr "Enheden »%s« er optaget"

#, c-format
msgid "Device '%s' cannot capture at %dx%d"
msgstr "Enheden »%s« kan ikke optage med %dx%d"

#, c-format
msgid "Device '%s' cannot capture in the specified format"
msgstr "Enheden »%s« kan ikke optage i det angivne format"

#, c-format
msgid "Device '%s' does support non-contiguous planes"
msgstr "Enheden »%s« understøtter ikke planer, der ikke hænger sammen"

#, c-format
msgid "Could not get parameters on device '%s'"
msgstr "Kunne ikke hente parametre fra enhed »%s«"

msgid "Video device did not accept new frame rate setting."
msgstr "Videoenheden accepterede ikke ny indstilling for billedrate."

msgid "Video device did not provide output format."
msgstr "Videoenheden angav ikke uddataformat."

msgid "Video device returned invalid dimensions."
msgstr "Videoenhed returnerede ugyldige dimensioner."

# http://en.wikipedia.org/wiki/Interlaced_video
msgid "Video devices uses an unsupported interlacing method."
msgstr "Videoenheder bruger en interlace-metode, der ikke er understøttet."

msgid "Video devices uses an unsupported pixel format."
msgstr "Videoenheder bruger et billedpunktsformat, der ikke er understøttet."

msgid "Failed to configure internal buffer pool."
msgstr "Kunne ikke konfigurere intern mellemlagerkø."

msgid "Video device did not suggest any buffer size."
msgstr "Videoenhed foreslog ikke en mellemlagerstørrelse."

msgid "No downstream pool to import from."
msgstr "Ingen nedstrømskø at importere fra."

#, c-format
msgid "Failed to get settings of tuner %d on device '%s'."
msgstr "Hentning af indstillinger for tuner %d på enhed »%s« fejlede."

#, c-format
msgid "Error getting capabilities for device '%s'."
msgstr "Fejl under hentning af kapaciteter for enhed »%s«."

#, c-format
msgid "Device '%s' is not a tuner."
msgstr "Enhed »%s« er ikke en tuner."

#, c-format
msgid "Failed to get radio input on device '%s'. "
msgstr "Kunne ikke hente radioinddata for enhed »%s«."

#, c-format
msgid "Failed to set input %d on device %s."
msgstr "Kunne ikke sætte inddata %d for enhed %s."

#, c-format
msgid "Failed to change mute state for device '%s'."
msgstr "Kunne ikke ændre tilstand for tænk/slut for enhed »%s«."

msgid "Failed to allocated required memory."
msgstr "Kunne ikke allokere den krævede hukommelse."

msgid "Failed to allocate required memory."
msgstr "Kunne ikke allokere den krævede hukommelse."

#, c-format
msgid "Converter on device %s has no supported input format"
msgstr ""
"Konverteringsprogram på enhed %s har ikke et understøttet inddataformat"

#, c-format
msgid "Converter on device %s has no supported output format"
msgstr "Konverteringsprogram på enhed %s har ikke et understøttet uddataformat"

#, c-format
msgid "Encoder on device %s has no supported input format"
msgstr "Koder på enhed %s har ikke et understøttet inddataformat"

#, c-format
msgid "Encoder on device %s has no supported output format"
msgstr "Koder på enhed %s har ikke et understøttet uddataformat"

msgid "Failed to start decoding thread."
msgstr "Kunne ikke starte afkodning af tråd."

msgid "Failed to process frame."
msgstr "Kunne ikke behandle billed."

#, c-format
msgid ""
"Error getting capabilities for device '%s': It isn't a v4l2 driver. Check if "
"it is a v4l1 driver."
msgstr ""
"Fejl ved hentning af egenskaber for enhed »%s«: Det er ikke en v412 driver. "
"Kontroller om det er en v411 driver."

#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr "Listning af inddata-attributter for %d i enhed %s fejlede"

#, c-format
msgid "Failed to get setting of tuner %d on device '%s'."
msgstr "Hentning af indstillinger for tuner %d på enhed »%s« fejlede."

#, c-format
msgid "Failed to query norm on device '%s'."
msgstr "Listning af standard på enhed »%s« fejlede."

#, c-format
msgid "Failed getting controls attributes on device '%s'."
msgstr "Hentning af kontrolattributter for enhed »%s« fejlede."

#, c-format
msgid "Cannot identify device '%s'."
msgstr "Kan ikke identificere enhed »%s«."

#, c-format
msgid "This isn't a device '%s'."
msgstr "Dette er ikke en enheds »%s«."

#, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "Kunne ikke tilgå enhed »%s«."

#, c-format
msgid "Device '%s' is not a capture device."
msgstr "Enhed »%s« er ikke en optageenhed."

#, c-format
msgid "Device '%s' is not a output device."
msgstr "Enhed »%s« er ikke en uddataenhed."

#, c-format
msgid "Device '%s' is not a M2M device."
msgstr "Enhed »%s« er ikke en M2M-enhed."

#, c-format
msgid "Could not dup device '%s' for reading and writing."
msgstr "Kunne ikke dup enhed »%s« for læsning og skrivning."

#, c-format
msgid "Failed to set norm for device '%s'."
msgstr "Indstilling af standard for enhed »%s« fejlede."

#, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr "Kunne ikke hente nuværende tuner-frekvens for enhed »%s«."

#, c-format
msgid "Failed to set current tuner frequency for device '%s' to %lu Hz."
msgstr "Kunne ikke sætte nuværende tuner-frekvens for enhed »%s« til %lu Hz."

#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr "Kunne ikke hente signalstyrke for enhed »%s«."

#, c-format
msgid "Failed to get value for control %d on device '%s'."
msgstr "Kunne ikke hente værdi af kontrol %d for enhed »%s«."

#, c-format
msgid "Failed to set value %d for control %d on device '%s'."
msgstr "Kunne ikke sætte værdi %d på kontrol %d for enhed »%s«."

#, c-format
msgid "Failed to get current input on device '%s'. May be it is a radio device"
msgstr ""
"Kunne ikke hente nuværende inddata for enhed »%s«. Måske er det en radioenhed"

#, c-format
msgid ""
"Failed to get current output on device '%s'. May be it is a radio device"
msgstr ""
"Kunne ikke hente nuværende uddata for enhed »%s«. Måske er det en radioenhed"

#, c-format
msgid "Failed to set output %d on device %s."
msgstr "Kunne ikke sætte uddata %d for enhed %s."

msgid "Changing resolution at runtime is not yet supported."
msgstr "Ændring af opløsning under kørsel er endnu ikke understøttet."

msgid "Cannot operate without a clock"
msgstr "Kan ikke fungere uden et ur"

#~ msgid "Internal data stream error."
#~ msgstr "Intern datastrømsfejl."

#~ msgid "Internal data flow error."
#~ msgstr "Intern datastrømsfejl."

#~ msgid "Device '%s' does not support video capture"
#~ msgstr "Enheden »%s« understøtter ikke videooptagelse"
