# Danish translation of gst-plugins-good
# This file is put in the public domain.
#
# Mogens Jaeger <mogens@jaeger.tf>, 2007.
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-good 0.10.5\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2006-12-17 20:31+0100\n"
"PO-Revision-Date: 2007-03-27 23:54+0200\n"
"Last-Translator: Mogens Jaeger <mogens@jaeger.tf>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.2\n"

#: ext/libpng/gstpngdec.c:330 ext/libpng/gstpngdec.c:513
#: gst/wavparse/gstwavparse.c:1615 gst/wavparse/gstwavparse.c:1670
msgid "Internal data stream error."
msgstr "Intern datastrømsfejl."

#: ext/esd/esdsink.c:261 ext/esd/esdsink.c:366
msgid "Could not establish connection to sound server"
msgstr "Kunne ikke skabe kontakt til lyd-serveren"

#: ext/esd/esdsink.c:268
msgid "Failed to query sound server capabilities"
msgstr "Listning af lydservers egenskaber fejlede"

#: ext/shout2/gstshout2.c:518
msgid "Could not connect to server"
msgstr "Kunne ikke forbinde til server"

#: gst/avi/gstavimux.c:1357
msgid "No or invalid input audio, AVI stream will be corrupt."
msgstr "Ingen eller defekt inddata audio, AVI sekvens vil blive ødelagt."

#: sys/ximage/gstximagesrc.c:641
msgid "Changing resolution at runtime is not yet supported."
msgstr "Ændring af opløsning under kørsel er endnu ikke understøttet."

#: sys/v4l2/gstv4l2src.c:911
#, c-format
msgid "Error read()ing %d bytes on device '%s'."
msgstr "Fejl ved læs()ning af %d byte på enhed '%s'."

#: sys/v4l2/gstv4l2src.c:919
#, c-format
msgid "Error reading from device '%s'"
msgstr "Fejl ved læsning fra enhed '%s'"

#: sys/v4l2/v4l2_calls.c:68
#, 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."

#: sys/v4l2/v4l2_calls.c:102
#, c-format
msgid "Failed to query attributes of input %d in device %s"
msgstr "Listning af inddata-attributter for %d i enhed %s fejlede"

#: sys/v4l2/v4l2_calls.c:126
#, c-format
msgid "Failed to get setting of tuner &d on device '%s'."
msgstr "Hentning af indstillinger for tuner &d på enhed '%s' fejlede."

#: sys/v4l2/v4l2_calls.c:166
#, c-format
msgid "Failed to query norm on device '%s'."
msgstr "Listning af standard på enhed '%s' fejlede."

#: sys/v4l2/v4l2_calls.c:214 sys/v4l2/v4l2_calls.c:285
#, c-format
msgid "Failed getting controls attributes on device '%s."
msgstr "Hentning af kontrol-attributter for enhed '%s' fejlede."

#: sys/v4l2/v4l2_calls.c:403
#, c-format
msgid "Cannot identify device '%s'."
msgstr "Kan ikke identificere enhed '%s'."

#: sys/v4l2/v4l2_calls.c:410
#, c-format
msgid "This isn't a device '%s'."
msgstr "Dette er ikke en enheds '%s'."

#: sys/v4l2/v4l2_calls.c:417
#, c-format
msgid "Could not open device '%s' for reading and writing."
msgstr "Kunne ikke tilgå enhed '%s'."

#: sys/v4l2/v4l2_calls.c:424
#, c-format
msgid "Device '%s' is not a capture device."
msgstr "Enhed '%s' er ikke en optageenhed."

#: sys/v4l2/v4l2_calls.c:519
#, c-format
msgid "Failed to set norm for device '%s'."
msgstr "Indstilling af standard for enhed '%s' fejlede."

#: sys/v4l2/v4l2_calls.c:556
#, c-format
msgid "Failed to get current tuner frequency for device '%s'."
msgstr "Kunne ikke hente nuværende tuner-frekvens for enhed '%s'."

#: sys/v4l2/v4l2_calls.c:597
#, 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."

#: sys/v4l2/v4l2_calls.c:631
#, c-format
msgid "Failed to get signal strength for device '%s'."
msgstr "Kunne ikke hente signalstyrke for enhed '%s'."

#: sys/v4l2/v4l2_calls.c:667
#, 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'."

#: sys/v4l2/v4l2_calls.c:702
#, 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'."

#: sys/v4l2/v4l2_calls.c:729
#, c-format
msgid "Failed to get current input on device '%s'."
msgstr "Kunne ikke hente nuværende inddata for enhed '%s'."

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

#: sys/v4l2/v4l2src_calls.c:95
#, c-format
msgid "Failed to enumerate possible video formats device '%s' can work with"
msgstr "Kunne ikke liste mulige videoformater, som '%s' enheden kan arbejde med"

#: sys/v4l2/v4l2src_calls.c:137 sys/v4l2/v4l2src_calls.c:239
#, c-format
msgid "Could not exchange data with device '%s'."
msgstr "Kunne ikke udveksle data med enheden '%s'."

#: sys/v4l2/v4l2src_calls.c:213 sys/v4l2/v4l2src_calls.c:230
#, c-format
msgid "Failed trying to get video frames from device '%s'."
msgstr "Forsøg på at hente videorammer fra enhed '%s' mislykkedes."

#: sys/v4l2/v4l2src_calls.c:215
#, c-format
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 "Buffertypen er ikke understøttet, eller indeks er udenfor grænser, eller der er ikke blevet tildelt buffere endnu, eller userptr eller længde er defekt. enhed %s"

#: sys/v4l2/v4l2src_calls.c:224
#, c-format
msgid "Failed trying to get video frames from device '%s'. Not enough memory."
msgstr "Forsøg på at hente videorammer fra enhed '%s' mislykkedes. Ikke tilstrækkeligt hukommelse."

#: sys/v4l2/v4l2src_calls.c:224
#, c-format
msgid "insufficient memory to enqueue a user pointer buffer. device %s."
msgstr "ikke tilstrækkeligt med hukommelse til at indrangere en brugerviserbuffer. enhed %s."

#: sys/v4l2/v4l2src_calls.c:232
#, c-format
msgid "Failed after %d tries. device %s. system error: %s"
msgstr "Fejlede efter %d forsøg. enhed %s. systemfejl: %s"

#: sys/v4l2/v4l2src_calls.c:272
#, c-format
msgid "Failed querying in which video format device '%s' is working with"
msgstr "Kunne ikke liste i hvilke formater, enhed '%s' kan arbejde med"

#: sys/v4l2/v4l2src_calls.c:316
#, c-format
msgid "The closest size from %dx%d is %dx%d, for video format %s on device '%s'"
msgstr "Den nærmeste størrelse fra %dx%d er %dx%d, for videoformat %s for enhed '%s'"

#: sys/v4l2/v4l2src_calls.c:330
#, c-format
msgid "The closest framerate from %u/%u is %u/%u, on device '%s'"
msgstr "Den nærmeste framerate fra %u/%u er %u/%u, på enhed '%s'"

#: sys/v4l2/v4l2src_calls.c:357 sys/v4l2/v4l2src_calls.c:367
#, c-format
msgid "Failed setting the video format for device '%s'"
msgstr "Kunne ikke indstille videoformat for enhed '%s'"

#: sys/v4l2/v4l2src_calls.c:487
#, c-format
msgid "Could not get buffers from device '%s'."
msgstr "Kunne ikke hente buffere fra enhed '%s'."

#: sys/v4l2/v4l2src_calls.c:496
#, c-format
msgid "The driver of device '%s' is broken."
msgstr "Driveren til enhed '%s' ir defekt."

#: sys/v4l2/v4l2src_calls.c:505
#, c-format
msgid "Could not get enough buffers from device '%s'."
msgstr "Kunne ikke hente tilstrækkeligt med buffere fra enhed '%s'."

#: sys/v4l2/v4l2src_calls.c:516
#, c-format
msgid "Could not get properties of data comming from device '%s'"
msgstr "Kunne ikke få egenskaberne for de data der kommer fra enhed '%s'"

#: sys/v4l2/v4l2src_calls.c:526
#, c-format
msgid "Could not map memory in device '%s'."
msgstr "Kunne ikke afbilde hukommelse i enhed '%s'."

#: sys/v4l2/v4l2src_calls.c:569
#, c-format
msgid "Error starting streaming capture from device '%s'."
msgstr "Kunne ikke starte strømningsoptagelse fra enhed '%s'."

#: sys/v4l2/v4l2src_calls.c:613
#, c-format
msgid "Error stopping streaming capture from device '%s'."
msgstr "Kunne ikke stoppe strømningsoptagelse fra enhed '%s'."
