# Italian translation for gstreamer package of GStreamer project.
# Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 GStreamer team
# This file is distributed under the same license as the gstreamer package.
#
# Alcune note (essenzialmente una traduzione) dopo una lettura non troppo
# approfondita del manuale di GStreamer
#
# Tenete presente che, da un punto di vista dello sviluppatore, GStreamer
# è pesantemente influenzato dalla struttura di GLib, ed in particolare
# dei GObject, per cui le varie funzioni di libreria operano con il
# criterio della programmazione orientata agli oggetti.
#
# Per chi mi capisce, e tagliando via elementi qui non essenziali
#
# GObject
#         GstObject
#                 GstPad
#                 GstElement
#                         GstBin
#                                 GstPipeline
#                                 GstThread
#
#
# --- Elements ---
#
# Un elemento è il blocco costruttivo di base per una "media pipeline".
# Tutti i differenti elementi di alto livello usati sono derivati da
# GstElement. Gli elementi sono "black boxes" con un numero di differenti
# aspetti. Uno di questi aspetti è la presenza di "pads", o punti di
# collegamento (link points). This terminology arises from soldering; pads
# are where wires can be attached.
#
# Tipi di elemento:
#       * source - genera i dati da usare in una pipeline, ad es. leggendo
#         da qualcosa (disco, rete, canale scheda audio...). Hanno solo un
#         source pad
#       * filter/codec - hanno dei pad di input ed output. Operano sui
#         dati che ricevono nel sink pad e producono dati sul loro source
#         pad. Un demuxer appartiene a questa categoria (1 in, 2 out)
#       * sink - punto d'uscita di una pipeline, accettano dati senza
#         produrne altri. Implementazioni di elementi sink sono la
#         scrittura su file, la riproduzione audio o video.
#
# --- Pads ---
#
# Sono l'interfaccia di un elemento verso il mondo esterno. Permettono di
# esporre il tipo specifico di media che l'elemento può gestire.
#
# I pad possono essere source e sink: ciò dipende dal punto di vista
# dell'elemento cui appartengono
#
# Tipi di pad:
#       * dinamici - l'elemento crea un pad se necessario, esempio: mpeg
#         multiplexer crea pad a seconda dei differenti stream elementari
#         rilevati nello stream mpeg
#       * requested - pad creato on demand
#
# --- Capabilities ---
#
# Usate per descrivere i tipi di dati che possono "attraversare" il pad.
# Sono allegate al pad stesso. Capabilities sta per "capability chain"
#
# [Salto le parti complicate] Le capabilities sono usate per
# l'autoplugging (automatically finding plugins for a set of capabilities)
# ed il rilevamento di compatibilità (tra due pad collegati - "caps
# negotiation")
#
# --- Link ---
#
# Dati tre elementi (source, filter, sink) posso collegare in modo
# opportuno i relativi pad, creando una catena. Vedi allegato.
#
# --- Bins ---
#
# Un bin è un elemento contenitore. È possibile aggiungere elementi ad un
# bin, così come è possibile aggiungerlo ad un altro bin.
#
# Consente di combinare un gruppo di elementi collegati in un elemento
# logico. A questo punto non serve + ragionare in termini dei singoli
# elementi, ma del bin.
#
# Una pipeline è un elemento bin, un contenitore generico che consente la
# schedulazione degli elementi contenuti. Il "toplevel bin" deve essere
# una pipeline.
#
# Anche un thread è un elemento bin, che consente l'esecuzione separata.
#
# --- Buffers ---
#
# Contengono i dati che scorrono (flow) attraverso una pipeline.
# Tipicamente gli elementi source creano un nuovo buffer.
#
# --- Element states ---
#
#       * NULL - predefinito, l'elemento è creato e non sta facendo
#         alcunché
#       * READY - pronto a fare qualcosa
#       * PAUSED - in pausa
#       * PLAYING - sta facendo qualcosa
#
# Si passa da NULL a PLAYING attraverso i due stati intermedi.
#
# ----------------------------------------
# Luca Ferretti <elle.uca@infinito.it>, 2004, 2005, 2006, 2007, 2008, 2009, 2010.
msgid ""
msgstr ""
"Project-Id-Version: gstreamer 0.10.30.3\n"
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
"POT-Creation-Date: 2014-02-08 11:32+0100\n"
"PO-Revision-Date: 2010-10-25 10:03+0200\n"
"Last-Translator: Luca Ferretti <elle.uca@infinito.it>\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"
"Plural-Forms: nplurals=2; plural=n != 1;\n"

# --gst-version
msgid "Print the GStreamer version"
msgstr "Stampa la versione di GStreamer"

# --gst-fatal-warnings
msgid "Make all warnings fatal"
msgstr "Rende tutti i warning critici"

# --gst-debug-help
msgid "Print available debug categories and exit"
msgstr "Stampa le categorie di debug disponibili ed esce"

# --gst-debug-level=LIVELLO
#, fuzzy
msgid ""
"Default debug level from 1 (only error) to 9 (anything) or 0 for no output"
msgstr ""
"Livello di debug predefinito da 1 (solo errori) a 5 (tutto), oppure 0 per "
"nessun output"

msgid "LEVEL"
msgstr "LIVELLO"

# --gst-debug=ELENCO
msgid ""
"Comma-separated list of category_name:level pairs to set specific levels for "
"the individual categories. Example: GST_AUTOPLUG:5,GST_ELEMENT_*:3"
msgstr ""
"Elenco di coppie \"nome_categoria=livello\" separate da virgole per "
"impostare i livelli specifici per ogni singola categoria. Esempio: "
"GST_AUTOPLUG:5,GST_ELEMENT_*:3"

msgid "LIST"
msgstr "ELENCO"

# --gst-debug-no-color
msgid "Disable colored debugging output"
msgstr "Disabilita output di debug colorato"

msgid ""
"Changes coloring mode of the debug log. Possible modes: off, on, disable, "
"auto, unix"
msgstr ""

# --gst-debug-disable
msgid "Disable debugging"
msgstr "Disabilita debug"

# --gst-plugin-spew
msgid "Enable verbose plugin loading diagnostics"
msgstr "Abilita diagnostica prolissa del caricamento plugin"

# --gst-plugin-path=PERCORSI
msgid "Colon-separated paths containing plugins"
msgstr "Percorsi che contengono i plugin separati da due punti (:)"

msgid "PATHS"
msgstr "PERCORSI"

# --gst-plugin-load=PLUGIN
msgid ""
"Comma-separated list of plugins to preload in addition to the list stored in "
"environment variable GST_PLUGIN_PATH"
msgstr ""
"Elenco separato da virgole dei plugin da pre-caricare in aggiunta all'elenco "
"memorizzato nella variabile d'ambiente GST_PLUGIN_PATH"

msgid "PLUGINS"
msgstr "PLUGIN"

# --gst-disable-segtrap
msgid "Disable trapping of segmentation faults during plugin loading"
msgstr "Disabilita il trapping dei segfault durante il caricamento dei plugin"

# --gst-disable-registry-update
msgid "Disable updating the registry"
msgstr "Disabilita l'aggiornamento del registro"

# --gst-disable-registry-fork
msgid "Disable spawning a helper process while scanning the registry"
msgstr ""
"Disabilita la generazione di un processo helper durante la scansione del "
"registro"

# intestazione categoria opzioni precendenti
msgid "GStreamer Options"
msgstr "Opzioni di GStreamer"

# --help-gst
msgid "Show GStreamer Options"
msgstr "Mostra le opzioni di GStreamer"

msgid "Unknown option"
msgstr "Opzione sconosciuta"

msgid "GStreamer encountered a general core library error."
msgstr "GStreamer ha incontrato un errore generico delle librerie di base."

msgid ""
"GStreamer developers were too lazy to assign an error code to this error."
msgstr ""
"Gli sviluppatori di GStreamer sono stati troppo pigri per assegnare un "
"codice d'errore a questo errore."

msgid "Internal GStreamer error: code not implemented."
msgstr "Errore interno di GStreamer: codice non implementato."

msgid ""
"GStreamer error: state change failed and some element failed to post a "
"proper error message with the reason for the failure."
msgstr ""
"Errore di GStreamer: cambio di stato non riuscito, alcuni elementi non sono "
"riusciti a pubblicare un appropriato messaggio di errore con il motivo del "
"fallimento."

msgid "Internal GStreamer error: pad problem."
msgstr "Errore interno di GStreamer: problema di pad."

msgid "Internal GStreamer error: thread problem."
msgstr "Errore interno di GStreamer: problema di thread."

#, fuzzy
msgid "GStreamer error: negotiation problem."
msgstr "Errore interno di GStreamer: problema di negoziazione."

msgid "Internal GStreamer error: event problem."
msgstr "Errore interno di GStreamer: problema di evento."

msgid "Internal GStreamer error: seek problem."
msgstr "Errore interno di GStreamer: problema di posizionamento."

msgid "Internal GStreamer error: caps problem."
msgstr "Errore interno di GStreamer: problema di caps."

msgid "Internal GStreamer error: tag problem."
msgstr "Errore interno di GStreamer: problema di tag."

msgid "Your GStreamer installation is missing a plug-in."
msgstr "Nell'installazione di GStreamer in uso manca un plugin."

#, fuzzy
msgid "GStreamer error: clock problem."
msgstr "Errore interno di GStreamer: problema di clock."

msgid ""
"This application is trying to use GStreamer functionality that has been "
"disabled."
msgstr ""
"Questa applicazione sta tentando di usare una funzionalità di GStreamer che "
"è stata disabilitata."

msgid "GStreamer encountered a general supporting library error."
msgstr "GStreamer ha incontrato un errore generico nelle librerie di supporto."

msgid "Could not initialize supporting library."
msgstr "Impossibile inizializzare la libreria di supporto."

msgid "Could not close supporting library."
msgstr "Impossibile chiudere la libreria di supporto."

msgid "Could not configure supporting library."
msgstr "Impossibile configurare la libreria di supporto."

msgid "Encoding error."
msgstr "Errore nel codificare."

msgid "GStreamer encountered a general resource error."
msgstr "GStreamer ha incontrato un errore generico di risorse."

msgid "Resource not found."
msgstr "Risorsa non trovata."

msgid "Resource busy or not available."
msgstr "Risorsa occupata o non disponibile."

msgid "Could not open resource for reading."
msgstr "Impossibile aprire la risorsa in lettura."

msgid "Could not open resource for writing."
msgstr "Impossibile aprire la risorsa in scrittura."

msgid "Could not open resource for reading and writing."
msgstr "Impossibile aprire la risorsa in lettura e scrittura."

msgid "Could not close resource."
msgstr "Impossibile chiudere la risorsa."

msgid "Could not read from resource."
msgstr "Impossibile leggere dalla risorsa."

msgid "Could not write to resource."
msgstr "Impossibile scrivere sulla risorsa."

msgid "Could not perform seek on resource."
msgstr "Impossibile effettuare un posizionamento sulla risorsa."

msgid "Could not synchronize on resource."
msgstr "Impossibile sincronizzarsi sulla risorsa."

msgid "Could not get/set settings from/on resource."
msgstr "Impossibile ottenere/regolare le impostazioni della risorsa."

msgid "No space left on the resource."
msgstr "Niente spazio sulla risorsa."

msgid "GStreamer encountered a general stream error."
msgstr "GStreamer ha incontrato un errore generico di stream."

msgid "Element doesn't implement handling of this stream. Please file a bug."
msgstr ""
"L'elemento non implementa la gestione di questo stream. Se possibile "
"segnalare il bug."

msgid "Could not determine type of stream."
msgstr "Impossibile determinare il tipo di stream."

msgid "The stream is of a different type than handled by this element."
msgstr ""
"Lo stream è di un tipo differente da quello gestito da questo elemento."

msgid "There is no codec present that can handle the stream's type."
msgstr "Non è presente alcun codec che possa gestire questo tipo di stream."

msgid "Could not decode stream."
msgstr "Impossibile decodificare lo stream."

msgid "Could not encode stream."
msgstr "Impossibile fare l'encoding dello stream."

msgid "Could not demultiplex stream."
msgstr "Impossibile de-multiplare lo stream."

msgid "Could not multiplex stream."
msgstr "Impossibile multiplare lo stream."

msgid "The stream is in the wrong format."
msgstr "Lo stream è nel formato errato."

msgid "The stream is encrypted and decryption is not supported."
msgstr "Questo stream è cifrato e non è supportata la decodifica."

msgid ""
"The stream is encrypted and can't be decrypted because no suitable key has "
"been supplied."
msgstr ""
"Questo stream è cifrato e non può essere decodificato perché non è stata "
"fornita alcuna chiave adatta."

#, c-format
msgid "No error message for domain %s."
msgstr "Nessun messaggio d'errore per il dominio %s."

#, c-format
msgid "No standard error message for domain %s and code %d."
msgstr "Nessun messaggio d'errore standard per il dominio %s e il codice %d."

msgid "Selected clock cannot be used in pipeline."
msgstr "Il clock selezionato non può essere usato nella pipeline."

#, c-format
msgid "Error writing registry cache to %s: %s"
msgstr "Errore nello scrivere la cache di registro su %s: %s"

# questo e i successivi sono nome + descrizione delle proprietà
# dei tag ID3 (o simili); le descrizioni per omogeneità iniziano
# tutte con la lettera minuscola
msgid "title"
msgstr "titolo"

msgid "commonly used title"
msgstr "il titolo usato comunemente"

msgid "title sortname"
msgstr "nome ordinamento titolo"

msgid "commonly used title for sorting purposes"
msgstr "il titolo usato comunemente a scopo di ordinamento"

msgid "artist"
msgstr "artista"

msgid "person(s) responsible for the recording"
msgstr "la o le persone responsabili della registrazione"

msgid "artist sortname"
msgstr "nome ordinamento artista"

msgid "person(s) responsible for the recording for sorting purposes"
msgstr ""
"la o le persone responsabili della registrazione a scopo di ordinamento"

msgid "album"
msgstr "album"

msgid "album containing this data"
msgstr "l'album che contiene questi dati"

msgid "album sortname"
msgstr "nome ordinamento album"

msgid "album containing this data for sorting purposes"
msgstr "l'album che contiene questi dati a scopo di ordinamento"

msgid "album artist"
msgstr "artista album"

msgid "The artist of the entire album, as it should be displayed"
msgstr "l'artista dell'intero album, così come dovrebbe essere mostrato"

msgid "album artist sortname"
msgstr "nome ordinamento artista album"

msgid "The artist of the entire album, as it should be sorted"
msgstr "l'artista dell'intero album, così come dovrebbe essere ordinato"

msgid "date"
msgstr "data"

msgid "date the data was created (as a GDate structure)"
msgstr "la data in cui i dati sono stati creati (come struttura GDate)"

msgid "datetime"
msgstr "data/ora"

msgid "date and time the data was created (as a GstDateTime structure)"
msgstr ""
"la data e l'ora in cui i dati sono stati creati (come struttura GstDateTime)"

msgid "genre"
msgstr "genere"

msgid "genre this data belongs to"
msgstr "il genere a cui appartengono questi dati"

msgid "comment"
msgstr "commento"

msgid "free text commenting the data"
msgstr "del testo libero a commento dei dati"

msgid "extended comment"
msgstr "commento esteso"

msgid "free text commenting the data in key=value or key[en]=comment form"
msgstr ""
"del testo libero a commento dei dati nella forma chiave=valore o "
"chiave[it]=commento"

msgid "track number"
msgstr "numero di traccia"

msgid "track number inside a collection"
msgstr "il numero della traccia all'interno di una collezione"

msgid "track count"
msgstr "totale tracce"

msgid "count of tracks inside collection this track belongs to"
msgstr ""
"il totale delle tracce all'interno della collezione a cui questa traccia "
"appartiene"

msgid "disc number"
msgstr "numero del disco"

msgid "disc number inside a collection"
msgstr "il numero del disco all'interno di una collezione"

msgid "disc count"
msgstr "totale dischi"

msgid "count of discs inside collection this disc belongs to"
msgstr ""
"il totale dei dischi all'interno della collezione a cui questo disco "
"appartiene"

msgid "location"
msgstr "posizione"

msgid ""
"Origin of media as a URI (location, where the original of the file or stream "
"is hosted)"
msgstr ""
"l'origine del contenuto multimediale come URI (posizione in cui il file o "
"stream originale è ospitato)"

msgid "homepage"
msgstr "sito web"

msgid "Homepage for this media (i.e. artist or movie homepage)"
msgstr ""
"sito web per questo contenuto multimediale (cioè il sito web dell'artista o "
"del film)"

msgid "description"
msgstr "descrizione"

msgid "short text describing the content of the data"
msgstr "un breve testo che descrive il contenuto dei dati"

msgid "version"
msgstr "versione"

msgid "version of this data"
msgstr "la versione di questi dati"

msgid "ISRC"
msgstr "ISRC"

msgid "International Standard Recording Code - see http://www.ifpi.org/isrc/"
msgstr ""
"International Standard Recording Code - consultare http://www.ifpi.org/isrc"

msgid "organization"
msgstr "organizzazione"

msgid "copyright"
msgstr "copyright"

msgid "copyright notice of the data"
msgstr "l'avviso sul copyright dei dati"

msgid "copyright uri"
msgstr "uri copyright"

msgid "URI to the copyright notice of the data"
msgstr "l'URI all'avviso sul copyright dei dati"

#, fuzzy
msgid "encoded by"
msgstr "encoder"

msgid "name of the encoding person or organization"
msgstr ""

msgid "contact"
msgstr "contatto"

msgid "contact information"
msgstr "le informazioni sul contatto"

msgid "license"
msgstr "licenza"

msgid "license of data"
msgstr "la licenza dei dati"

msgid "license uri"
msgstr "uri licenza"

msgid "URI to the license of the data"
msgstr "l'URI alla licenza dei dati"

msgid "performer"
msgstr "interprete"

msgid "person(s) performing"
msgstr "la o le persone che hanno interpretato"

msgid "composer"
msgstr "compositore"

msgid "person(s) who composed the recording"
msgstr "la o le persone che hanno composto della registrazione"

msgid "duration"
msgstr "durata"

msgid "length in GStreamer time units (nanoseconds)"
msgstr "la lunghezza in unità di tempo di GStreamer (nanosecondi)"

msgid "codec"
msgstr "codec"

msgid "codec the data is stored in"
msgstr "il codec con cui di dati sono memorizzati"

msgid "video codec"
msgstr "codec video"

msgid "codec the video data is stored in"
msgstr "il codec con cui i dati video sono memorizzati"

msgid "audio codec"
msgstr "codec audio"

msgid "codec the audio data is stored in"
msgstr "il codec con cui i dati audio sono memorizzati"

msgid "subtitle codec"
msgstr "codec sottotitoli"

msgid "codec the subtitle data is stored in"
msgstr "il codec con cui i dati dei sottotitoli sono memorizzati"

msgid "container format"
msgstr "formato contenitore"

msgid "container format the data is stored in"
msgstr "il formato contenitore con cui i dati sono memorizzati"

msgid "bitrate"
msgstr "bitrate"

msgid "exact or average bitrate in bits/s"
msgstr "il bitrate esatto o medio in bit/s"

msgid "nominal bitrate"
msgstr "bitrate nominale"

msgid "nominal bitrate in bits/s"
msgstr "il bitrate nominale in bit/s"

msgid "minimum bitrate"
msgstr "bitrate minimo"

msgid "minimum bitrate in bits/s"
msgstr "il bitrate minimo in bit/s"

msgid "maximum bitrate"
msgstr "bitrate massimo"

msgid "maximum bitrate in bits/s"
msgstr "il bitrate massimo in bit/s"

msgid "encoder"
msgstr "encoder"

msgid "encoder used to encode this stream"
msgstr "l'encoder usato per codificare questo stream"

msgid "encoder version"
msgstr "versione encoder"

msgid "version of the encoder used to encode this stream"
msgstr "la versione dell'encoder usato per codificare questo stream"

msgid "serial"
msgstr "seriale"

msgid "serial number of track"
msgstr "il numero seriale della traccia"

msgid "replaygain track gain"
msgstr "guadagno traccia replaygain"

msgid "track gain in db"
msgstr "il guadagno della traccia in dB"

msgid "replaygain track peak"
msgstr "picco traccia replaygain"

msgid "peak of the track"
msgstr "il picco della traccia"

msgid "replaygain album gain"
msgstr "guadagno album replaygain"

msgid "album gain in db"
msgstr "il guadagno dell'album in dB"

msgid "replaygain album peak"
msgstr "picco album replaygain"

msgid "peak of the album"
msgstr "il picco dell'album"

msgid "replaygain reference level"
msgstr "livello riferimento replaygain"

msgid "reference level of track and album gain values"
msgstr ""
"il livello di riferimento dei valori di guadagno della traccia e dell'album"

msgid "language code"
msgstr "codice lingua"

#, fuzzy
msgid "language code for this stream, conforming to ISO-639-1 or ISO-639-2"
msgstr "il codice della lingua per questo stream, conforme a ISO-639-1"

#, fuzzy
msgid "language name"
msgstr "codice lingua"

msgid "freeform name of the language this stream is in"
msgstr ""

msgid "image"
msgstr "immagine"

msgid "image related to this stream"
msgstr "l'immagine relazionata a questo stream"

#. TRANSLATORS: 'preview image' = image that shows a preview of the full image
msgid "preview image"
msgstr "immagine anteprima"

msgid "preview image related to this stream"
msgstr "l'immagine di anteprima relazionata a questo stream"

msgid "attachment"
msgstr "allegato"

msgid "file attached to this stream"
msgstr "il file allegato a questo stream"

# cfr http://it.wikipedia.org/wiki/Battiti_per_minuto
msgid "beats per minute"
msgstr "battiti per minuto"

msgid "number of beats per minute in audio"
msgstr "il numero di battiti al minuto nell'audio"

msgid "keywords"
msgstr "parole chiave"

msgid "comma separated keywords describing the content"
msgstr "le parole chiave separate da virgole che descrivono il contesto"

msgid "geo location name"
msgstr "nome località geog."

msgid ""
"human readable descriptive location of where the media has been recorded or "
"produced"
msgstr ""
"la descrizione comprensibile della località in cui il contenuto multimediale "
"è stato registrato o prodotto"

msgid "geo location latitude"
msgstr "latitudine località geog."

# http://it.wikipedia.org/wiki/WGS84
# World Geodetic System 1984
msgid ""
"geo latitude location of where the media has been recorded or produced in "
"degrees according to WGS84 (zero at the equator, negative values for "
"southern latitudes)"
msgstr ""
"la latitudine geografica della località in cui il contenuto multimediale è "
"stato registrato o prodotto, espresso in gradi secondo lo standard WGS84 "
"(zero all'equatore, valori negativi per le latitudini a sud)"

msgid "geo location longitude"
msgstr "longitudine località geog."

msgid ""
"geo longitude location of where the media has been recorded or produced in "
"degrees according to WGS84 (zero at the prime meridian in Greenwich/UK,  "
"negative values for western longitudes)"
msgstr ""
"la longitudine geografica della località in cui il contenuto multimediale è "
"stato registrato o prodotto, in gradi secondo lo standard WGS84 (zero al "
"primo meridiano su Greenwich/UK, valori negativi per le longitudini a ovest)"

msgid "geo location elevation"
msgstr "elevazione località geog."

msgid ""
"geo elevation of where the media has been recorded or produced in meters "
"according to WGS84 (zero is average sea level)"
msgstr ""
"l'elevazione geografica della località in cui il contenuto multimediale è "
"stato registrato o prodotto, in metri secondo lo standard WGS84 (zero è il "
"livello medio del mare)"

msgid "geo location country"
msgstr "nazione località geog."

msgid "country (english name) where the media has been recorded or produced"
msgstr ""
"nazione (nome inglese) in cui il contenuto multimediale è stato registrato o "
"prodotto"

msgid "geo location city"
msgstr "città località geog."

msgid "city (english name) where the media has been recorded or produced"
msgstr ""
"città (nome inglese) in cui il contenuto multimediale è stato registrato o "
"prodotto"

msgid "geo location sublocation"
msgstr "sub-località località geog."

#, fuzzy
msgid ""
"a location within a city where the media has been produced or created (e.g. "
"the neighborhood)"
msgstr ""
"una località all'interno di una città in cui il contenuto multimediale è "
"stato registrato o prodotto (p.e. il quartiere)"

msgid "geo location horizontal error"
msgstr "errore orizzontale località geog."

msgid "expected error of the horizontal positioning measures (in meters)"
msgstr "errore atteso delle misure di posizionamento orizzontale (in metri)"

msgid "geo location movement speed"
msgstr "velocità movimento località geog."

msgid ""
"movement speed of the capturing device while performing the capture in m/s"
msgstr ""
"la velocità di movimento del dispositivo di acquisizione durante "
"l'acquisizione stessa in m/s"

msgid "geo location movement direction"
msgstr "direzione movimento località geog."

msgid ""
"indicates the movement direction of the device performing the capture of a "
"media. It is represented as degrees in floating point representation, 0 "
"means the geographic north, and increases clockwise"
msgstr ""
"indica la direzione di movimento del dispositivo nell'eseguire "
"l'acquisizione di un contenuto multimediale; è rappresentato come gradi in "
"notazione floating point, con 0 che indica il nord geografico e incrementi "
"in sento orario"

msgid "geo location capture direction"
msgstr "direzione di acquisizione località geog."

msgid ""
"indicates the direction the device is pointing to when capturing  a media. "
"It is represented as degrees in floating point  representation, 0 means the "
"geographic north, and increases clockwise"
msgstr ""
"indica la direzione del dispositivo nell'eseguire l'acquisizione di un "
"contenuto multimediale; è rappresentato come gradi in notazione floating "
"point, con 0 che indica il nord geografico e incrementi in sento orario"

#. TRANSLATORS: 'show name' = 'TV/radio/podcast show name' here
msgid "show name"
msgstr "nome dello show"

msgid "Name of the tv/podcast/series show the media is from"
msgstr ""
"il nome dello show tv/podcast/serie da cui proviene il contenuto multimediale"

#. TRANSLATORS: 'show sortname' = 'TV/radio/podcast show name as used for sorting purposes' here
msgid "show sortname"
msgstr "nome ordinamento dello show"

msgid ""
"Name of the tv/podcast/series show the media is from, for sorting purposes"
msgstr ""
"il nome dello show tv/podcast/serie da cui proviene il contenuto "
"multimediale, a scopo di ordinamento"

msgid "episode number"
msgstr "numero di episodio"

msgid "The episode number in the season the media is part of"
msgstr ""
"il numero di episodio nella stagione di cui fa parte il contenuto "
"multimediale"

msgid "season number"
msgstr "numero di stagione"

msgid "The season number of the show the media is part of"
msgstr ""
"il numero di stagione dello show di cui fa parte il contenuto multimediale"

msgid "lyrics"
msgstr "testo"

msgid "The lyrics of the media, commonly used for songs"
msgstr "il testo del contenuto multimediale, tipicamente usato per le canzoni"

msgid "composer sortname"
msgstr "nome ordinamento compositore"

msgid "person(s) who composed the recording, for sorting purposes"
msgstr ""
"la o le persone che hanno composto la registrazione, a scopo di ordinamento"

msgid "grouping"
msgstr "raggruppamento"

msgid ""
"Groups related media that spans multiple tracks, like the different pieces "
"of a concerto. It is a higher level than a track, but lower than an album"
msgstr ""
"raggruppa elementi multimediali correlati che si dividono su diverse tracce, "
"come le diverse parti di un concerto; è un livello superiore rispetto alla "
"traccia, ma inferiore rispetto all'album"

msgid "user rating"
msgstr "giudizio utente"

msgid ""
"Rating attributed by a user. The higher the rank, the more the user likes "
"this media"
msgstr ""
"giudizio attribuito da un utente; maggiore è il livello, più all'utente "
"piace questo contenuto multimediale"

msgid "device manufacturer"
msgstr "produttore dispositivo"

msgid "Manufacturer of the device used to create this media"
msgstr ""
"il produttore del dispositivo usato per creare questo contenuto multimediale"

msgid "device model"
msgstr "modello dispositivo"

msgid "Model of the device used to create this media"
msgstr ""
"il modello del dispositivo usato per creare questo contenuto multimediale"

msgid "application name"
msgstr "nome applicazione"

msgid "Application used to create the media"
msgstr "l'applicazione usata per creare il contenuto multimediale"

msgid "application data"
msgstr "dati applicazione"

msgid "Arbitrary application data to be serialized into the media"
msgstr ""
"i dati arbitrari dell'applicazione da serializzare all'interno del contenuto "
"multimediale"

msgid "image orientation"
msgstr "orientamento immagine"

msgid "How the image should be rotated or flipped before display"
msgstr "come ruotare o capovolgere l'immagine prima di mostrarla"

msgid "publisher"
msgstr ""

msgid "Name of the label or publisher"
msgstr ""

msgid "interpreted-by"
msgstr ""

msgid "Information about the people behind a remix and similar interpretations"
msgstr ""

msgid ", "
msgstr ", "

#, c-format
msgid "No URI handler for the %s protocol found"
msgstr ""

#, c-format
msgid "URI scheme '%s' not supported"
msgstr ""

#, c-format
msgid "ERROR: from element %s: %s\n"
msgstr "ERRORE: dall'elemento %s: %s\n"

#, c-format
msgid ""
"Additional debug info:\n"
"%s\n"
msgstr ""
"Informazioni di debug aggiuntive:\n"
"%s\n"

#, c-format
msgid "specified empty bin \"%s\", not allowed"
msgstr "specificato il bin vuoto «%s», non consentito"

#, c-format
msgid "no bin \"%s\", skipping"
msgstr "nessun bin «%s», omesso"

#, c-format
msgid "no property \"%s\" in element \"%s\""
msgstr "nessuna proprietà «%s» nell'elemento «%s»"

#, c-format
msgid "could not set property \"%s\" in element \"%s\" to \"%s\""
msgstr "impossibile impostare la proprietà «%s» nell'elemento «%s» a «%s»"

#, c-format
msgid "could not link %s to %s"
msgstr "impossibile collegare %s a %s"

#, c-format
msgid "no element \"%s\""
msgstr "nessun elemento «%s»"

#, c-format
msgid "could not parse caps \"%s\""
msgstr "impossibile analizzare i caps «%s»"

msgid "link without source element"
msgstr "collegamento senza elemento sorgente"

msgid "link without sink element"
msgstr "collegamento senza elemento sink"

#, c-format
msgid "no source element for URI \"%s\""
msgstr "elemento sorgente mancante per l'URI «%s»"

#, c-format
msgid "no element to link URI \"%s\" to"
msgstr "elemento mancante per collegare l'URI «%s» a"

#, c-format
msgid "no sink element for URI \"%s\""
msgstr "elemento sink mancante per l'URI «%s»"

#, c-format
msgid "could not link sink element for URI \"%s\""
msgstr "impossibile collegare l'elemento sink per l'URI «%s»"

msgid "empty pipeline not allowed"
msgstr "pipeline vuota non consentito"

msgid "A lot of buffers are being dropped."
msgstr "Stanno per essere scartati molti buffer."

msgid "Internal data flow problem."
msgstr "Problema interno nel flusso di dati."

msgid "Internal data stream error."
msgstr "Errore interno nello stream di dati."

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

msgid "Internal clock error."
msgstr "Errore interno di clock."

msgid "Failed to map buffer."
msgstr ""

msgid "Filter caps"
msgstr "Caps di filtro"

# * sul perché lasciato capabilities, vedi intro
# * possible allowed --> ammesse (e basta)
# * ANY tradotto,  ma non so se è parola chiave, dovrei controllare.
#
#   --Luca
msgid ""
"Restrict the possible allowed capabilities (NULL means ANY). Setting this "
"property takes a reference to the supplied GstCaps object."
msgstr ""
"Pone limitazioni sulle capabilities ammesse (NULL significa QUALSIASI). "
"Impostando questa proprietà si prende un riferimento all'oggetto GstCaps "
"fornito."

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

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

#, c-format
msgid "Error closing file \"%s\"."
msgstr "Errore nel chiudere il file «%s»."

#, c-format
msgid "Error while seeking in file \"%s\"."
msgstr "Errore durante il posizionamento sul file «%s»."

#, c-format
msgid "Error while writing to file \"%s\"."
msgstr "Errore durante la scrittura sul file «%s»."

msgid "No file name specified for reading."
msgstr "Nessun nome di file specificato per la lettura."

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

#, c-format
msgid "Could not get info on \"%s\"."
msgstr "Impossibile ottenere informazioni su «%s»."

#, c-format
msgid "\"%s\" is a directory."
msgstr "«%s» è una directory."

#, c-format
msgid "File \"%s\" is a socket."
msgstr "Il file «%s» è un socket."

msgid "Failed after iterations as requested."
msgstr "Fallito dopo le iterazioni come richiesto."

msgid "No Temp directory specified."
msgstr "Nessuna directory temporanea specificata."

#, c-format
msgid "Could not create temp file \"%s\"."
msgstr "Impossibile creare il file temporaneo «%s»."

msgid "Error while writing to download file."
msgstr "Errore durante la scritta sul file di scaricamento."

msgid "caps"
msgstr "caps"

msgid "detected capabilities in stream"
msgstr "rilevate capabilites nello stream"

msgid "minimum"
msgstr "minimo"

msgid "force caps"
msgstr "forza i caps"

msgid "force caps without doing a typefind"
msgstr "forza i caps senza eseguire un typefind"

msgid "Stream contains no data."
msgstr "Lo stream non contiene dati."

msgid "Implemented Interfaces:\n"
msgstr "Interfacce implementate:\n"

msgid "readable"
msgstr "leggibile"

msgid "writable"
msgstr "scrivibile"

msgid "controllable"
msgstr "controllabile"

msgid "changeable in NULL, READY, PAUSED or PLAYING state"
msgstr "può passare allo stato  NULL, READY, PAUSED o PLAYING"

msgid "changeable only in NULL, READY or PAUSED state"
msgstr "può passare solo allo stato  NULL, READY o PAUSED"

msgid "changeable only in NULL or READY state"
msgstr "può passare solo allo stato  NULL o READY"

msgid "Blacklisted files:"
msgstr "File nella blacklist:"

# Esempio:
#    Total count: 23 plugins, 34 feature
msgid "Total count: "
msgstr "In totale: "

#, c-format
msgid "%d blacklisted file"
msgid_plural "%d blacklisted files"
msgstr[0] "%d file nella blacklist"
msgstr[1] "%d file nella blacklist"

#, c-format
msgid "%d plugin"
msgid_plural "%d plugins"
msgstr[0] "%d plugin"
msgstr[1] "%d plugin"

#, c-format
msgid "%d blacklist entry"
msgid_plural "%d blacklist entries"
msgstr[0] "%d voce nella blacklist"
msgstr[1] "%d voci nella blacklist"

#, c-format
msgid "%d feature"
msgid_plural "%d features"
msgstr[0] "%d funzionalità"
msgstr[1] "%d funzionalità"

# -a, --print-all
msgid "Print all elements"
msgstr "Stampa tutti gli elementi"

# -b, --print-blacklist
msgid "Print list of blacklisted files"
msgstr "Stampa l'elenco dei file nella blacklist"

# --print-plugin-auto-install-info
msgid ""
"Print a machine-parsable list of features the specified plugin or all "
"plugins provide.\n"
"                                       Useful in connection with external "
"automatic plugin installation mechanisms"
msgstr ""
"Stampa un elenco machine-parsable di funzionalità fornite dal plugin "
"specificato o da tutti i plugin.\n"
"                                       Utile nelle connessioni con "
"meccanismi esterni di installazione automatica dei plugin."

# Esempio:
# $ gst-inspect-0.10 --plugin
# video4linux:  v4lsrc: Video (video4linux/raw) Source
# queue2:  queue2: Queue
# gio:  giostreamsrc: GIO stream source
# gio:  giostreamsink: GIO stream sink
# gio:  giosrc: GIO source
# gio:  giosink: GIO sink
# volume:  volume: Volume
msgid "List the plugin contents"
msgstr "Elenca il contenuto dei plugin"

msgid "Check if the specified element or plugin exists"
msgstr ""

msgid ""
"When checking if an element or plugin exists, also check that its version is "
"at least the version specified"
msgstr ""

# -u, --uri-handlers
msgid "Print supported URI schemes, with the elements that implement them"
msgstr "Stampa gli schemi URI supportati, con gli elementi che li implementano"

#, c-format
msgid "Could not load plugin file: %s\n"
msgstr "Impossibile caricare il file di plugin: %s\n"

#, c-format
msgid "No such element or plugin '%s'\n"
msgstr "Elemento o plugin «%s» inesistente\n"

msgid "Index statistics"
msgstr ""

#, c-format
msgid "Got message #%u from element \"%s\" (%s): "
msgstr "Ottenuto messaggio #%u dall'elemento \"%s\" (%s): "

#, c-format
msgid "Got message #%u from pad \"%s:%s\" (%s): "
msgstr "Ottenuto messaggio #%u dal pad \"%s:%s\" (%s): "

#, c-format
msgid "Got message #%u from object \"%s\" (%s): "
msgstr "Ottenuto messaggio #%u dall'oggetto \"%s\" (%s): "

#, c-format
msgid "Got message #%u (%s): "
msgstr "Ottenuto messaggio #%u (%s): "

#, c-format
msgid "Got EOS from element \"%s\".\n"
msgstr "Ottenuto EOS dall'elemento «%s».\n"

#, c-format
msgid "FOUND TAG      : found by element \"%s\".\n"
msgstr "TAG TROVATO    : trovato dall'elemento \"%s\".\n"

#, c-format
msgid "FOUND TAG      : found by pad \"%s:%s\".\n"
msgstr "TAG TROVATO    : trovato dal pad \"%s:%s\".\n"

#, c-format
msgid "FOUND TAG      : found by object \"%s\".\n"
msgstr "TAG TROVATO    : trovato dall'oggetto \"%s\".\n"

msgid "FOUND TAG\n"
msgstr "TAG TROVATO\n"

#, fuzzy, c-format
msgid "FOUND TOC      : found by element \"%s\".\n"
msgstr "TAG TROVATO    : trovato dall'elemento \"%s\".\n"

#, fuzzy, c-format
msgid "FOUND TOC      : found by object \"%s\".\n"
msgstr "TAG TROVATO    : trovato dall'oggetto \"%s\".\n"

#, fuzzy
msgid "FOUND TOC\n"
msgstr "TAG TROVATO\n"

#, c-format
msgid ""
"INFO:\n"
"%s\n"
msgstr ""
"INFORMAZIONE:\n"
"%s\n"

#, c-format
msgid "WARNING: from element %s: %s\n"
msgstr "ATTENZIONE: dall'elemento %s: %s\n"

msgid "Prerolled, waiting for buffering to finish...\n"
msgstr "Preroll eseguito, in attesa del riempimento buffer per completare...\n"

#, fuzzy
msgid "Prerolled, waiting for progress to finish...\n"
msgstr "Preroll eseguito, in attesa del riempimento buffer per completare...\n"

msgid "buffering..."
msgstr "riempimento buffer..."

msgid "Done buffering, setting pipeline to PLAYING ...\n"
msgstr ""
"Riempimento buffer completato, impostazione della pipeline a PLAYING ...\n"

msgid "Buffering, setting pipeline to PAUSED ...\n"
msgstr "Riempimento buffer, impostazione della pipeline a PAUSED ...\n"

msgid "Redistribute latency...\n"
msgstr "Ridistribuzione latenza...\n"

#, c-format
msgid "Setting state to %s as requested by %s...\n"
msgstr "Impostazione dello stato a %s come richiesto da %s...\n"

msgid "Interrupt: Stopping pipeline ...\n"
msgstr "Interrotto: arresto della pipeline ...\n"

#, c-format
msgid "Progress: (%s) %s\n"
msgstr ""

#, fuzzy, c-format
msgid "Missing element: %s\n"
msgstr "nessun elemento «%s»"

#, fuzzy, c-format
msgid "Got context from element '%s': %s=%s\n"
msgstr "ATTENZIONE: dall'elemento %s: %s\n"

# -t, --tags
msgid "Output tags (also known as metadata)"
msgstr "Stampa i tag (anche noti come metadati)"

msgid "Output TOC (chapters and editions)"
msgstr ""

# -v, --verbose
msgid "Output status information and property notifications"
msgstr "Stampa informazioni di stato e notifiche delle proprietà"

# -q, --quiet
msgid "Do not print any progress information"
msgstr "Non stampa alcuna informazione di avanzamento"

# -m, --messages
msgid "Output messages"
msgstr "Stampa i messaggi"

# -X, --exclude=TIPO1,TIPO2,...
msgid "Do not output status information of TYPE"
msgstr "Non stampa le informazioni di stato per TIPO"

msgid "TYPE1,TYPE2,..."
msgstr "TIPO1,TIPO2,..."

# -f, --no-fault
msgid "Do not install a fault handler"
msgstr "Non installa un gestore di fault"

# -e, --eos-on-shutdown
msgid "Force EOS on sources before shutting the pipeline down"
msgstr "Forza EOS sulle sorgenti prima di arrestare la pipeline"

msgid "Gather and print index statistics"
msgstr ""

#, c-format
msgid "ERROR: pipeline could not be constructed: %s.\n"
msgstr "ERRORE: impossibile costruire la pipeline: %s.\n"

msgid "ERROR: pipeline could not be constructed.\n"
msgstr "ERRORE: impossibile costruire la pipeline.\n"

#, c-format
msgid "WARNING: erroneous pipeline: %s\n"
msgstr "ATTENZIONE: pipeline errata: %s.\n"

msgid "ERROR: the 'pipeline' element wasn't found.\n"
msgstr "ERRORE: l'elemento «pipeline» non è stato trovato.\n"

msgid "Setting pipeline to PAUSED ...\n"
msgstr "Impostazione della pipeline a PAUSED ...\n"

msgid "ERROR: Pipeline doesn't want to pause.\n"
msgstr "ERRORE: la pipeline non vuole mettersi in pausa.\n"

# Sinks are special elements in GStreamer. This is because sink elements have to take care of preroll, which is the process that takes care that elements going into the GST_STATE_PAUSED state will have buffers ready after the state change. The result of this is that such elements can start processing data immediately after going into the GST_STATE_PLAYING state, without requiring to take some time to initialize outputs or set up decoders; all that is done already before the state-change to GST_STATE_PAUSED  successfully completes.
#
# Preroll, however, is a complex process that would require the same code in many elements. Therefore, sink elements can derive from the GstBaseSink base-class, which does preroll and a few other utility functions automatically. The derived class only needs to implement a bunch of virtual functions and will work automatically.
msgid "Pipeline is live and does not need PREROLL ...\n"
msgstr "La pipeline è viva e non necessita il PREROLL ...\n"

msgid "Pipeline is PREROLLING ...\n"
msgstr "La pipeline è in PREROLLING ...\n"

msgid "ERROR: pipeline doesn't want to preroll.\n"
msgstr "ERRORE: la pipeline non vuole fare il preroll.\n"

msgid "Pipeline is PREROLLED ...\n"
msgstr "La pipeline è in PREROLLED ...\n"

msgid "Setting pipeline to PLAYING ...\n"
msgstr "Impostazione della pipeline a PLAYING ...\n"

msgid "ERROR: pipeline doesn't want to play.\n"
msgstr "ERRORE: la pipeline non vuole riprodurre.\n"

msgid "EOS on shutdown enabled -- Forcing EOS on the pipeline\n"
msgstr "EOS all'arresto abilitato -- Forzato EOS sulla pipeline\n"

#, fuzzy
msgid "EOS on shutdown enabled -- waiting for EOS after Error\n"
msgstr "EOS all'arresto abilitato -- Forzato EOS sulla pipeline\n"

msgid "Waiting for EOS...\n"
msgstr "In attesa di EOS...\n"

msgid "EOS received - stopping pipeline...\n"
msgstr "Ricevuto EOS - arresto della pipeline...\n"

#, fuzzy
msgid "Interrupt while waiting for EOS - stopping pipeline...\n"
msgstr "Interrotto: arresto della pipeline ...\n"

msgid "An error happened while waiting for EOS\n"
msgstr "Si è verificato un errore durante l'attesa di EOS\n"

# secondo me quel % è un errore... magari dovrebbe
# essere %d o %s, a meno che non costruscano il messagio
# in qualche modo esoterico...
msgid "Execution ended after %"
msgstr "Esecuzione terminata dopo %"

msgid "Setting pipeline to READY ...\n"
msgstr "Impostazione della pipeline a READY ...\n"

msgid "Setting pipeline to NULL ...\n"
msgstr "Impostazione della pipeline a NULL ...\n"

msgid "Freeing pipeline ...\n"
msgstr "Esecuzione di free sulla pipeline...\n"

# -T, --trace
#~ msgid "Print alloc trace (if enabled at compile time)"
#~ msgstr "Stampa traccia di alloc (se abilitato in compilazione)"

#~ msgid "Usage: gst-xmllaunch <file.xml> [ element.property=value ... ]\n"
#~ msgstr "Uso: gst-xmllaunch <FILE.XML> [ ELEMENTO.PROPRIETA=VALORE ... ]\n"

#~ msgid "ERROR: parse of xml file '%s' failed.\n"
#~ msgstr "ERRORE: analisi del file xml «%s» non riuscita.\n"

#~ msgid "ERROR: no toplevel pipeline element in file '%s'.\n"
#~ msgstr "ERRORE: nessun elemento pipeline toplevel nel file «%s».\n"

#~ msgid "WARNING: only one toplevel element is supported at this time.\n"
#~ msgstr "ATTENZIONE: al momento è supportato sono un elemento toplevel.\n"

#~ msgid "ERROR: could not parse command line argument %d: %s.\n"
#~ msgstr ""
#~ "ERRORE: impossibile analizzare l'argomento %d della riga di comando: %s.\n"

#~ msgid "WARNING: element named '%s' not found.\n"
#~ msgstr "ATTENZIONE: elemento con nome «%s» non trovato.\n"

# -o, --output=FILE
#~ msgid "Save xml representation of pipeline to FILE and exit"
#~ msgstr "Salva su FILE una rappresentazione xml della pipeline ed esce"

#~ msgid "FILE"
#~ msgstr "FILE"

#~ msgid "Do not install signal handlers for SIGUSR1 and SIGUSR2"
#~ msgstr "Non installa i gestori di segnale per SIGUSR1 e SIGUSR2"

#~ msgid "Error re-scanning registry %s: %s"
#~ msgstr "Errore nel ri-scansionare il registro %s: %s"

#~ msgid "Error re-scanning registry %s"
#~ msgstr "Errore nel ri-scansionare il registro %s"
