vantaggi e svantaggi formati aperti e proprietari, correlazione con software aperto e software proprietraio. Esempi di zip 7zip, h264 mpeg4, png e gif.
2. In questa presentazione parlerò di alcuni fra i
più utilizzati formati open source e del
perché piace a molti, soprattutto
amministrazioni, utilizzarli.
3. Il formato dei dati digitali si definisce
"aperto" quando ne viene resa pubblica,
mediante esaustiva documentazione, la
sintassi, la semantica, il contesto operativo
e le modalità di utilizzo. Tali informazioni,
unitamente ad una guida all’uso del
formato, orientata alla lettura da parte
dell’utilizzatore, devono essere presenti in
uno o più documenti rilasciati dall’ente
proponente lo standard.
4. Chi propone un formato aperto?
L’ente proponente può essere un ente di
standardizzazione, una pubblica
amministrazione o una comunità di utenti.
Il CNIPA istruisce ed aggiorna, con
periodicità almeno annuale, un repertorio
dei formati aperti utilizzabili nelle
pubbliche amministrazioni e delle modalità
di trasferimento degli stessi.
5. Cos'è dunque un formato aperto?
Un formato aperto è un formato che
specifica una tecnica di pubblico dominio
utilizzata per l'archiviazione dei dati
digitali.
Il fine??
Garantire l'accesso ai dati e di incoraggiare
la concorrenza nel miglioramento.
7. Se uso un programma open
avrò la possibilità di
salvare il mio prodotto
anche in formati aperti.
Anche i programmi
proprietari aprono formati
aperti... in questo modo
l'utilizzatore potrà usare
qualsiasi programma per
aprire il file interessato!!
8. Qualche persona potrebbe però pensare...
Certamente il software libero è apprezzato dalle
università e dai posti in cui si fa ricerca ma nel
mondo reale fatto di piccole imprese tutto ha un
marchio, tutto ha un padrone... il software libero è
davvero la strada da perseguire?
9. Vantaggi: Svantaggi:
● Accesso al sorgente
● Liberi dall'obbligo di
legarsi a programmi
proprietari
● Programmi gratuiti
all'utilizzatore
● Possibilità di
distribuzione
● Indipendenza dai fornitori
● Le funzionalità dei programmi
open a volte sono limitate rispetto
a programmi proprietari
● Non essendo uguali ai loro
competitor proprietari serve della
formazione per imparare ad usarli
(costo di conversione).
E SOPRATTUTTO...
12. Svantaggi dei formati proprietari:
● I programmi sotto licenza proprietaria salvano i
propri file in formati proprietari.
● Solo il produttore può intervenire sul prodotto
● I formati obsoleti possono diventare illeggibili
dal nuovo software
● Serve (spesso) software proprietario per aprire
formati proprietari
13. Alcuni esempi:
● ...mi hanno mandato un file .doc, ma io non ho Word. Come
faccio per leggere questo documento?
● ...10 anni fa ho scritto la tesi con Microsoft Works 7, e ora non
riesco più a leggere questi file .wps...
● Ho un file .cad ma non uso autocad come lo visualizzo????
● ...tempo fa ho riscontrato un errore in Excel, ho visto che è un
errore noto, ma non è ancora arrivato il Service Pack per
correggerlo...
14. Formati utilizzabili dalle amministrazioni
● HTML/XHTML per la pubblicazione di informazioni pubbliche su Internet;
● PDF con marcatura ( secondo standard ISO/IEC 32000-1:2008);
● XML per la realizzazione di database di pubblico accesso ai dati;
● ODF e OOXML per documenti di testo;
● PNG per le immagini;
● OGG per i file audio;
● Theora per file video;
● Epub per libri.
15. Nascita di alcuni formati aperti da formati
proprietari.
Zip vs 7zip
16. Il formato zip
E un formato di archiviazione dati ormai molto
diffuso. Ne esistono molte implementazioni anche
sotto licenza GPL. Ma per prima cosa vediamo
come nasce, poi passeremo a vedere come viene
realizzato.
17. Nascita di Zip
Phil Katz (informatico
statunitense) inventore
del software PKZIP
nell'anno 1989.
● Laurea nel Wisconsin
● PKARC
● PKZIP
18. PKZIP
Nasce come ribellione alle critiche a lui mosse dopo la diffusione dell'algoritmo
PKARC. Le specifiche furono mantenute aperte ma venne rilasciato in
commercio sotto una licenza shareware.
Licenza shareware: puoi usare il prodotto in prova per 30/60 gg, poi se desideri
continuare ad usarlo lo registri alla casa produttrice pagando le royalty dovute.
Il suo formato divenne ben presto lo standard perchè ne potevano essere
sviluppate altre versioni gratuite e portate su altre piattaforme hardware.
Divenne il più famoso autore di software freeware di tutti i tempi.
Tuttavia:
Non credeva nella diffusione del suo prodotto sotto ambiente Windows e per
questo fu implementato Winzip. Perse una grossissima fetta di mercato.
19. L'algoritmo che stà alla base del formato zip è LZW. In realtà non si
utilizza questo algoritmo ma dei suoi cugini l'algoritmo DEFLATE. LZW
però stà alla base di questo prodotto.
Caratteristiche:
● Facile da implementare
● Compressione di ogni file separatmente. In questo modo se un file è
corrotto posso comunque estrarre gli altri a discapito della
compressione totale
● Compressione lossless
● Applicabile a tutti i dati (audio, video, testo)
● Percentuale di compressione non molto elevata per la generalità
dell'algoritmo
Dato che le specifiche sono pubbliche andiamo a vedere
l'algoritmo di compressione:
20. LZW
● Input e output sono stringhe finite appartenenti ad un insieme dell'alfabeto
● Per avere buone compressioni è utile che i dati in input contengano
numerose ripetizioni
● All'aumentare dell'input il rapporto di compressione tende asintoticamente
al max
● Non esiste alcun overhead in quanto la tabella dei simboli non viene passata
in fase di decodifica
● Nella fase di decoding il dizionario è identico a quello dell'encoding
21. LZW
Prendiamo la stringa:
ababbabcabbabbax
w = NULL;
while (not EOF)
{
read a character k
if wk exists in the dictionary
w = wk;
else{
add wk to the dictionary;
output the code for w;
w = k;
}
}
output the code for w;
w k output codice simbolo
NULL a
a b a 256 ab
b a b 257 ba
a b
ab b 256 258 abb
b a
ba b 257 259 bab
b c b 260 bc
c a c 261 ca
a b
ab b
abb a 258 262 abba
a b
ab a
abb a
abbba x 262 263 abbax
x EOF x
22. 7Z
● Supporta diversi tipi di compressione
● Sopporta la cifratura e la preelaborazione
● Disponibile sotto licenza GPL
● La specifica è distribuita con il codice del software 7Zip
● È un formato aperto che utilizza diversi tipi possibili di compressione
LZMA LZMA2 BZIP2 DEFLATE
● Supporta file di grandi dimensioni
● Alta capacità di compressione
● Viene utilizzato dal programma 7Zip
23. 7Zip
É un programma di compressione open source progettato originariamente
da Microsoft, lavora con il formato 7Z può leggere e scrivere molti altri tipi
di file archivio.
Sviluppato da Igor Pavlov utilizza molti algoritmi di compressione a
catena, questo gli permette di raggiungere un ottimo livello di
compressione.
● Distribuito per Microsoft e per unix
● Rilasciato sotto licenza LGPL
25. GIF
Il formato gif è stato creato nel 1989 dall'azienda CompuServe per fornire un
formato adatto alle immagini a colori.
● Rimpiazza il formato RLE (in bianco e nero)
● Prima versione 87.a nata nel 1989 poi verranno aggiunto il canale alfa per la
trasparenza e le immagini multiple
● Brevettato da ComputerServe e Unisys prima del 1994 non vollero alcun
tipo di pagamento.
● Dal 1994 se volevi salvare in formato gif dovevi pagarli il formato era
ormai diffusissimo!!
26. Animazioni spesso divertenti
In realtà non stiamo parlando di video
ma piuttosto di poche immagini in
sequenza.
Perché divenne così
famoso??
● Utilizza l'algoritmo di
compressione LZW
● Permette l'interlacciamento
Caratteristiche minori
● 256 colori della palette di colori
VGA
27. GIF
Anche a causa del pagamento delle royalty si
sviluppò dal 1994 un formato aperto che andò
sotto il nome di PNG
Nel 2003 Gif liberation day
Scade il brevetto (in Europa e Giappone
scade nel 2004)
28. PNG
Portable network graphics
È un formato di memorizzazione di immagini.
Creato nel 1995 da un gruppo di autori indipendenti,
approvato dal W3C il 1° ottobre 1996.
Simile al gif superficialmente ma implementato in modo
molto diverso.
29. PNG
Caratteristiche tecniche:
● Può salvare immagini a 24 bit mentre gif salvava immagini a 8 bit (256
colori)
● Ha un canale dedicato alla trasparenza
● Gestione colori classica bitmap
● Interlaccimento
● Trasmissione lungo n canali
● Indipendenza dall'hardware
● Compressione lossless con algoritmo deflate
● Immagini truecolor fino a 48 bit per pixel
● Immagini in scala di grigio fino a 16 bit per pixel
● Rilasciato sotto licenza BSD/GPL
30. ● 89 identifica la trasmissione
(riduce i rische che il file sia
frainteso con altri formati)
● 50 4E 47 in ASCII PNG
● 00 0A tipo di conversione da
effettuare
● 1A forma di visualizzazione
del tipo di file
● 0A Indica dove terminare la
conversione
● Poi troveremo diversi chunk
(contengono informazioni
utilissime per la
retrocompatibilità e il controllo
errori)
31. Colori
● Png usa come gif una palette di colori
● Per ogni canale dell'immagini fornisce un numero di pixel,
tutti i canali avranno lo stesso numero di pixel
● Colori in RGB o in scala di grigi, l'RGB rappresenta le
informazioni sui colori mentre la scala di grigi rappresenta
la luminanza
● L'immagine può essere sia true color sia usare una palette di
256 colori come gif
32. Colori
● Interlacciamento (immagine caricata in 7 passi)
● ANIMAZIONI CONSENTITE MA CON CHUNK
APPOSITO CHE RENDONO IL FILE NON
RETROCOMPATIBILE
● I colori sono calibrati in base al device su cui lo si visualizza
se è presente il chunk che contiene questo tipo di
informazione
33. Compressione
Due tecniche utilizzate a cascata:
● Il filtering
● Algoritmo DEFLATE
Filtering:
È una tecnica astuta che permette di comprimere
senza perdita l'informazione sui pixel basandosi sui
pixel precedenti.
35. H.264
Lo standard h.264 viene creato dall'azienda Moving Picture
Experts Group.
Nel maggio 2003 è stata completata la stesura finale della
prima versione dello standard, mentre nelle edizioni successive
sono state aggiunte varie estensioni alle sue funzionalità.
É UNA TECNOLOGIA COPERTA DA BREVETTI!!!
Nei paesi in cui i brevetti sono accettati i venditori e i
commercianti devono pagare delle royalty per usare la
tecnologia che h.264 usa.
36. H.264
È un formato di codifica video loss cioè con perdita di dati
molto utile per la distribuzione e lo stoccaggio di file video di
tutte le dimensioni e qualità.
Molto utilizzato per streaming video da YouTube o Itune
Caratteristiche:
● Bassissimo bitrate di trasmissione
● Trasparente alla decodifica
● Gestione dei flussi video come oggetti
● Gestione dei DRM (digital right menagement)
37. WebM
Il formato video che stà diventando lo standard.
Pensato da Google per essere privo di royalty ed essere inserito
in html 5.
WebM e i relativi software sono rilasciati sotto licenza BSD.
WebM ha una struttura dei file basata sul formato Matroska
(mkv).
Nativamente WebM è supportato da Mozilla Firefox, Opera,
Google Chrome dal 2010.
Dal 2011 con plug-in su Safari e Explorer 9 e successivi.
38. WebM
Caratteristiche:
● Supporta il formato VP8, implementa le ottimizzazioni
● Basato su mkv
● Decodifica ottimale (a costo 0) per risoluzione 1080p
● Gestito nativamente da molti browser
● Inseribile nei tag html5 video
<video src="movie.webm" poster="movie.jpg" controls>
This is fallback content to display if the browser
does not support the video element.
</video>
39. WebM
Vari produttori hanno deciso di creare hardware con che
supportino nativamente questo tipo di formato.