# Italian translation for gst-plugins-bad package of GStreamer project.
# Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 GStreamer core team
# This file is distributed under the same license as the gst-plugins-bad package.
#
# Luca Ferretti <elle.uca@infinito.it>, 2007, 2008, 2009.
# Sebastiano Pistore <sebastianopistore.info@protonmail.ch>, 2017
msgid ""
msgstr ""
"Project-Id-Version: gst-plugins-bad 1.12.0\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2017-05-04 15:09+0300\n"
"PO-Revision-Date: 2017-09-15 09:49+0200\n"
"Last-Translator: Sebastiano Pistore <sebastianopistore.info@protonmail.ch>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
"X-Generator: Poedit 2.0.3\n"

#: ext/gl/gstgltestsrc.c:489
msgid "failed to draw pattern"
msgstr ""

#: ext/gl/gstgltestsrc.c:490
msgid "A GL error occured"
msgstr "Si è verificato un errore OpenGL"

#: ext/gl/gstgltestsrc.c:496
msgid "format wasn't negotiated before get function"
msgstr ""

#: ext/opencv/gsttemplatematch.cpp:186
msgid "OpenCV failed to load template image"
msgstr "OpenCV non è riuscito a caricare l'immagine del template"

#: ext/resindvd/resindvdsrc.c:361
msgid "Could not read title information for DVD."
msgstr "Impossibile leggere le informazioni del titolo per il DVD."

#: ext/resindvd/resindvdsrc.c:367
#, c-format
msgid "Failed to open DVD device '%s'."
msgstr "Apertura del dispositivo DVD «%s» non riuscita."

#: ext/resindvd/resindvdsrc.c:373
msgid "Failed to set PGC based seeking."
msgstr "Impostazione del posizionamento basato su PGC non riuscita."

#: ext/resindvd/resindvdsrc.c:1164
msgid "Could not read DVD. This may be because the DVD is encrypted and a DVD decryption library is not installed."
msgstr "Impossibile leggere il DVD. Questo potrebbe essere dovuto al fatto che il DVD è crittografato ed all'assenza nel sistema di una libreria di decodifica DVD."

#: ext/resindvd/resindvdsrc.c:1169 ext/resindvd/resindvdsrc.c:1178
msgid "Could not read DVD."
msgstr "Impossibile leggere il DVD."

#: ext/smoothstreaming/gstmssdemux.c:421
#: gst-libs/gst/adaptivedemux/gstadaptivedemux.c:722
msgid "This file contains no playable streams."
msgstr "Questo file non contiene flussi visualizzabili a schermo."

#: ext/sndfile/gstsfdec.c:769
msgid "Could not open sndfile stream for reading."
msgstr "È impossibile aprire il flusso sndfile in lettura."

#: gst/asfmux/gstasfmux.c:1832
msgid "Generated file has a larger preroll time than its streams duration"
msgstr "Il file generato ha un tempo di preroll superiore alla durata dei suoi flussi"

#: gst/camerabin2/camerabingeneral.c:167 gst/camerabin2/gstcamerabin2.c:1859
#: gst/camerabin2/gstdigitalzoom.c:283 gst/camerabin2/gstviewfinderbin.c:270
#, c-format
msgid "Missing element '%s' - check your GStreamer installation."
msgstr "Manca l'elemento «%s» - verificare l'installazione di GStreamer."

#: gst/camerabin2/gstcamerabin2.c:347
msgid "File location is set to NULL, please set it to a valid filename"
msgstr "Posizione del file impostata su NULL, è necessario un nome di file valido"

#: gst/camerabin2/gstwrappercamerabinsrc.c:585
msgid "Digitalzoom element couldn't be created"
msgstr ""

#: gst/dvdspu/gstdvdspu.c:1041
msgid "Subpicture format was not configured before data flow"
msgstr ""

#: gst-libs/gst/adaptivedemux/gstadaptivedemux.c:3352
msgid "Failed to get fragment URL."
msgstr "Impossibile ottenere l'URL del frammento."

#: gst-libs/gst/adaptivedemux/gstadaptivedemux.c:3724
msgid "Couldn't download fragments"
msgstr "Impossibile scaricare frammenti"

#: gst-libs/gst/adaptivedemux/gstadaptivedemux.c:3813
#: gst/mpegtsdemux/mpegtsbase.c:1610
msgid "Internal data stream error."
msgstr "Errore interno nel flusso dei dati."

#: sys/dvb/gstdvbsrc.c:1579 sys/dvb/gstdvbsrc.c:1793
#, c-format
msgid "Device \"%s\" does not exist."
msgstr "Il dispositivo «%s» non esiste."

#: sys/dvb/gstdvbsrc.c:1583
#, c-format
msgid "Could not open frontend device \"%s\"."
msgstr "Impossibile accedere al frontend del dispositivo «%s»."

#: sys/dvb/gstdvbsrc.c:1602
#, c-format
msgid "Could not get settings from frontend device \"%s\"."
msgstr "Impossibile ottenere le impostazioni dal frontend del dispositivo «%s»."

#: sys/dvb/gstdvbsrc.c:1619
#, c-format
msgid "Cannot enumerate delivery systems from frontend device \"%s\"."
msgstr ""

#: sys/dvb/gstdvbsrc.c:1797
#, c-format
msgid "Could not open file \"%s\" for reading."
msgstr "Impossibile aprire il file «%s» in lettura."

#: sys/dvb/parsechannels.c:410
msgid "Couldn't find channel configuration file"
msgstr "Impossibile trovare file di configurazione canale"

#: sys/dvb/parsechannels.c:413 sys/dvb/parsechannels.c:563
#, c-format
msgid "Couldn't load channel configuration file: '%s'"
msgstr "Impossibile caricare file di configurazione canale: «%s»"

#: sys/dvb/parsechannels.c:421 sys/dvb/parsechannels.c:846
#, c-format
msgid "Couldn't find details for channel '%s'"
msgstr "Impossibile trovare dettagli del canale «%s»"

#: sys/dvb/parsechannels.c:430
#, c-format
msgid "No properties for channel '%s'"
msgstr "Nessuna proprietà per il canale «%s»"

#: sys/dvb/parsechannels.c:439
#, c-format
msgid "Failed to set properties for channel '%s'"
msgstr "Impossibile impostare le proprietà del canale «%s»"

#: sys/dvb/parsechannels.c:560
#, c-format
msgid "Couldn't find channel configuration file: '%s'"
msgstr "Impossibile trovare file di configurazione canale: «%s»"

#: sys/dvb/parsechannels.c:570
msgid "Channel configuration file doesn't contain any channels"
msgstr "Il file di configurazione del canale non contiene alcun canale"

#~ msgid "Internal clock error."
#~ msgstr "Errore interno del clock."

#~ msgid "Internal data flow error."
#~ msgstr "Errore interno nel flusso di dati."

#~ msgid "No file name specified for writing."
#~ msgstr "Nessun nome di file specificato per la scrittura."

#~ msgid "Could not open file \"%s\" for writing."
#~ msgstr "Impossibile aprire il file «%s» in scrittura."

#~ msgid "Could not write to file \"%s\"."
#~ msgstr "Impossibile scrivere sul file «%s»."

#~ msgid "Could not open audio device for mixer control handling."
#~ msgstr "Impossibile aprire il device audio per la gestione della regolazione del mixer."

#~ msgid "Could not open audio device for mixer control handling. This version of the Open Sound System is not supported by this element."
#~ msgstr "Impossibile aprire il device audio per la gestione della regolazione del mixer. Questa versione di Open Sound System non è supportata da questo elemento."

#~ msgid "Volume"
#~ msgstr "Volume"

# NdT: questo e i successivi non ho controllato che sono....
#~ msgid "Master"
#~ msgstr "Principale"

#~ msgid "Front"
#~ msgstr "Fronte"

#~ msgid "Rear"
#~ msgstr "Dietro"

#~ msgid "Headphones"
#~ msgstr "Cuffie"

#~ msgid "Center"
#~ msgstr "Centrale"

# NdT: lfe andrebbe tradotto come effetti a bassa frequenza e andrebbe aperto un bug per low frequency emitter che al limite è la cassa ma non il canale
#~ msgid "LFE"
#~ msgstr "LFE"

#~ msgid "Surround"
#~ msgstr "Surround"

#~ msgid "Side"
#~ msgstr "Laterale"

#~ msgid "Built-in Speaker"
#~ msgstr "Altop. incorporato"

#~ msgid "AUX 1 Out"
#~ msgstr "AUX 1 out"

#~ msgid "AUX 2 Out"
#~ msgstr "AUX 2 out"

#~ msgid "AUX Out"
#~ msgstr "AUX out"

#~ msgid "Bass"
#~ msgstr "Bassi"

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

#~ msgid "3D Depth"
#~ msgstr "Profondità 3D"

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

#~ msgid "3D Enhance"
#~ msgstr "Miglioramento 3D"

#~ msgid "Telephone"
#~ msgstr "Telefono"

#~ msgid "Microphone"
#~ msgstr "Microfono"

#~ msgid "Line Out"
#~ msgstr "Linea out"

#~ msgid "Line In"
#~ msgstr "Linea in"

#~ msgid "Internal CD"
#~ msgstr "CD interno"

#~ msgid "Video In"
#~ msgstr "Video in"

#~ msgid "AUX 1 In"
#~ msgstr "AUX 1 in"

#~ msgid "AUX 2 In"
#~ msgstr "AUX 2 in"

#~ msgid "AUX In"
#~ msgstr "AUX in"

# http://it.wikipedia.org/wiki/Pulse-Code_Modulation
#~ msgid "PCM"
#~ msgstr "PCM"

#~ msgid "Record Gain"
#~ msgstr "Guadagno registrazione"

#~ msgid "Output Gain"
#~ msgstr "Guadagno uscita"

#~ msgid "Microphone Boost"
#~ msgstr "Incremento microfono"

#~ msgid "Loopback"
#~ msgstr "Loopback"

#~ msgid "Diagnostic"
#~ msgstr "Diagnostica"

#~ msgid "Bass Boost"
#~ msgstr "Incremento bassi"

#~ msgid "Playback Ports"
#~ msgstr "Porte riproduzione"

#~ msgid "Input"
#~ msgstr "Input"

#~ msgid "Record Source"
#~ msgstr "Sorgente registrazione"

#~ msgid "Monitor Source"
#~ msgstr "Sorgente monitor"

#~ msgid "Keyboard Beep"
#~ msgstr "Beep tastiera"

#~ msgid "Monitor"
#~ msgstr "Monitor"

#~ msgid "Simulate Stereo"
#~ msgstr "Simula stereo"

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

#~ msgid "Surround Sound"
#~ msgstr "Suono surround"

#~ msgid "Microphone Gain"
#~ msgstr "Guadagno microfono"

#~ msgid "Speaker Source"
#~ msgstr "Sorgente altoparlante"

#~ msgid "Microphone Source"
#~ msgstr "Sorgente microfono"

#~ msgid "Jack"
#~ msgstr "Jack"

# vedi prima per lfe
#~ msgid "Center / LFE"
#~ msgstr "Centrale / LFE"

#~ msgid "Stereo Mix"
#~ msgstr "Mix stereo"

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

#~ msgid "Input Mix"
#~ msgstr "Mix ingresso"

#~ msgid "SPDIF In"
#~ msgstr "SPDIF in"

#~ msgid "SPDIF Out"
#~ msgstr "SPDIF out"

#~ msgid "Microphone 1"
#~ msgstr "Microfono 1"

#~ msgid "Microphone 2"
#~ msgstr "Microfono 2"

#~ msgid "Digital Out"
#~ msgstr "Uscita digitale"

#~ msgid "Digital In"
#~ msgstr "Ingresso digitale"

#~ msgid "HDMI"
#~ msgstr "HDMI"

#~ msgid "Modem"
#~ msgstr "Modem"

#~ msgid "Handset"
#~ msgstr "Auricolare"

#~ msgid "Other"
#~ msgstr "Altro"

#~ msgid "None"
#~ msgstr "Nessuno"

#~ msgid "On"
#~ msgstr "Acceso"

#~ msgid "Off"
#~ msgstr "Spento"

#~ msgid "Mute"
#~ msgstr "Escluso"

# NdT: questo e i successivi non ho controllato che sono....
#~ msgid "Fast"
#~ msgstr "Veloce"

#~ msgid "Very Low"
#~ msgstr "Molto lento"

#~ msgid "Low"
#~ msgstr "Lento"

#~ msgid "Medium"
#~ msgstr "Medio"

#~ msgid "High"
#~ msgstr "Alto"

#~ msgid "Very High"
#~ msgstr "Molto alto"

#~ msgid "Production"
#~ msgstr "Produzione"

#~ msgid "Front Panel Microphone"
#~ msgstr "Microfono pannello frontale"

#~ msgid "Front Panel Line In"
#~ msgstr "Linea in pannello frontale"

#~ msgid "Front Panel Headphones"
#~ msgstr "Cuffie pannello frontale"

#~ msgid "Front Panel Line Out"
#~ msgstr "Linea out pannello frontale"

#~ msgid "Green Connector"
#~ msgstr "Connettore verde"

#~ msgid "Pink Connector"
#~ msgstr "Connettore rosa"

#~ msgid "Blue Connector"
#~ msgstr "Connettore blu"

#~ msgid "White Connector"
#~ msgstr "Connettore bianco"

#~ msgid "Black Connector"
#~ msgstr "Connettore nero"

#~ msgid "Gray Connector"
#~ msgstr "Connettore grigio"

#~ msgid "Orange Connector"
#~ msgstr "Connettore arancione"

#~ msgid "Red Connector"
#~ msgstr "Connettore rosso"

#~ msgid "Yellow Connector"
#~ msgstr "Connettore giallo"

#~ msgid "Green Front Panel Connector"
#~ msgstr "Connettore verde pannello frontale"

#~ msgid "Pink Front Panel Connector"
#~ msgstr "Connettore rosa pannello frontale"

#~ msgid "Blue Front Panel Connector"
#~ msgstr "Connettore blu pannello frontale"

#~ msgid "White Front Panel Connector"
#~ msgstr "Connettore bianco pannello frontale"

#~ msgid "Black Front Panel Connector"
#~ msgstr "Connettore nero pannello frontale"

#~ msgid "Gray Front Panel Connector"
#~ msgstr "Connettore grigio pannello frontale"

#~ msgid "Orange Front Panel Connector"
#~ msgstr "Connettore arancione pannello frontale"

#~ msgid "Red Front Panel Connector"
#~ msgstr "Connettore rosso pannello frontale"

#~ msgid "Yellow Front Panel Connector"
#~ msgstr "Connettore giallo pannello frontale"

#  int spread;         /* copy front to surr/center channels */
#~ msgid "Spread Output"
#~ msgstr "Uscita diffusa"

#~ msgid "Downmix"
#~ msgstr "Downmix"

#~ msgid "Virtual Mixer Input"
#~ msgstr "Ingresso mixer virtuale"

#~ msgid "Virtual Mixer Output"
#~ msgstr "Uscita mixer virtuale"

#~ msgid "Virtual Mixer Channels"
#~ msgstr "Canali mixer virtuale"

#~ msgid "%s Function"
#~ msgstr "Funzione %s"

#~ msgid "%s %d"
#~ msgstr "%s %d"

#~ msgid "Could not open audio device for playback. Device is being used by another application."
#~ msgstr "Impossibile aprire il device audio per la riproduzione. Il dispositivo è attualmente usato da un'altra applicazione."

#~ msgid "Could not open audio device for playback. You don't have permission to open the device."
#~ msgstr "Impossibile aprire il device audio per la riproduzione. Permessi non sufficienti per aprire il dispositivo."

#~ msgid "Could not open audio device for playback."
#~ msgstr "Impossibile aprire il device audio per la riproduzione."

#~ msgid "Could not open audio device for playback. This version of the Open Sound System is not supported by this element."
#~ msgstr "Impossibile aprire il device audio per la riproduzione. Questa versione di Open Sound System non è supportata da questo elemento."

#~ msgid "Playback is not supported by this audio device."
#~ msgstr "Questo device audio non supporta la riproduzione."

#~ msgid "Audio playback error."
#~ msgstr "Errore nel riprodurre l'audio."

#~ msgid "Recording is not supported by this audio device."
#~ msgstr "Questo dispositivo audio non supporta la registrazione."

#~ msgid "Error recording from audio device."
#~ msgstr "Errore nel registrare dal dispositivo audio."
