Hardware e software 01 In questo capitolo Approfondirai le tue conoscenze sull’hardware. Esaminerai per esempio i componenti interni di un computer, le porte FireWire, le schede di acquisizione audio/video, le schede grafiche, le videocamere, i monitor CRT e LCD. Approfondirai anche alcuni aspetti legati al software come i formati di compressione. I sistemi hardware e software Introduzione In questi ultimi anni, si è registrata una rapidissima evoluzione di tutti i componenti di un PC, legata principalmente alle richieste sempre più esigenti del mercato software. Nella scelta non facile del PC diventa perciò fondamentale individuare il campo di applicazione principale dello stesso. Se da una parte il PC si può considerare costituito da una serie di componenti fondamentali, dall’altra la capacità di soddisfare le esigenze specifiche dell’utente è possibile solo grazie alla possibilità di espandere le potenzialità di base con dispositivi ad hoc mediante i quali il PC assume una precisa connotazione. Nei paragrafi successivi verranno analizzati perciò i componenti fondamentali che costituiscono un PC, ma verrà data particolare enfasi ai componenti dedicati alla gestione del video. I componenti interni di un computer All’interno del computer si possono individuare cinque tipologie principali di componenti: memoria RAM, memoria ROM, processore, hard disk e schede di espansione. Questi componenti sono connessi tra di loro attraverso la scheda madre, che consente inoltre il collegamento tra questi componenti e i cosiddetti dispositivi di input e di output. Il funzionamento del computer si basa sul continuo rapidissimo trasferimento di segnali elettrici fra questi componenti e fra gli stessi e le periferiche esterne. Propagandosi fra i milioni di circuiti che compongono il computer questi segnali attivano /disattivano continuamente altri circuiti producendo nuovi segnali che vanno a comandare altre parti, e così via per centinaia di milioni di volte ogni secondo. 1 C A P I TO L O 01 I dispositivi di input/output più comuni sono: tastiera, mouse, monitor, lettore CDRom e floppy, stampante e audio (casse, microfono), modem, masterizzatore, scanner, videocamera ecc.; alcuni dei dispositivi di I/O, per poter essere collegati alla macchina, richiedono la presenza di una scheda di espansione inserita all’interno del computer (figura 1.1). Figura 1.1 Dispositivi di Input/Output La scheda madre, o motherboard in inglese, è uno dei componenti fondamentali di un personal computer; sulla scheda madre sono connessi tutti gli altri componenti, dal processore di sistema alla scheda video, passando per hard disk ed eventuali ulteriori periferiche (figura 1.2). Figura 1.2 Una scheda madre 2 Hardware e software Il microprocessore (figura 1.3), sinteticamente chiamato CPU (dall’inglese Central Processing Unit), è il cuore del computer in quanto è adibito allo svolgimento delle funzioni più importanti dell’elaboratore elettronico. La CPU ha la funzione di eseguire i programmi contenuti nella memoria centrale prelevando, decodificando ed eseguendo le istruzioni che li costituiscono. Le caratteristiche principali di una CPU sono: • la frequenza di funzionamento: è la frequenza alla quale lavorano i processori, cioè il quantitativo di operazioni che ogni processore è in grado di eseguire in un secondo; • la memoria interna: generalmente di pochi KB è detta cache L1 e L2 ed è una particolare memoria di tipo statico molto veloce per la memorizzazione delle informazioni più ricorrenti; • il tipo di collegamento con la scheda madre: a ogni tipologia di connettore (Socket 7, Slot 1, Socket 370, Slot A, Socket A, Socket 478) corrisponde un particolare gruppo di processori che possono essere utilizzati. Figura 1.3 Un microprocessore o CPU La memoria RAM (Random Access Memory) (figura 1.4) è uno dei componenti fondamentali nel funzionamento di un personal computer. È la memoria dove vengono conservati i dati in corso di elaborazione (i documenti aperti) e le istruzioni del programma in esecuzione; si tratta di una memoria temporanea che si cancella completamente quando si spegne il computer. Le schede madri possono montare differenti tipi di memoria di sistema, a seconda del chipset da esse utilizzato. • Moduli SIMM: è un tipo di memoria a 32 bit ed è quella di più vecchia concezione. • SDRAM PC66: è il primo tipo di memoria SDRAM pensato per la frequenza di lavoro di 66 MHz ed è caratterizzato dalla presenza di 168 pin o contatti. • SDRAM PC100: pensato per un impiego alla frequenza di 100 MHz (da questo la sigla PC100), in genere vede l’impiego di moduli memoria da 10 oppure 8 ns. • SDRAM PC133: evoluzione della memoria PC133, come il nome suggerisce facilmente è pensata per il supporto ufficiale alla frequenza di 133 MHz. Questo tipo di memoria utilizza chip da 7.5 oppure 7 ns. • DDR (Double Data Rate): questa tecnologia, introdotta per la prima volta nelle memorie delle schede video, permette di raddoppiare la bandwidth della memoria a disposizione in quanto vengono utilizzati entrambi i fronti di clock (ascendente e discendente). 3 C A P I TO L O 01 • Rambus: questo nuovo standard per le memorie è stato introdotto da Intel per sistemi basati su CPU Pentium IV. Esistono tre differenti varianti di questa memoria che prendono il nome di PC600, PC700 e PC800. Figura 1.4 (a) Modulo memoria SDRAM PC133, da 64 Mbyte di capacità; (b) Modulo memoria DDR-SDRAM PC2100, da 128 Mbyte di capacità; (c) Modulo memoria Rambus, PC800, da 128 Mbyte di capacità L’hard disk (figura 1.5) ha quale compito principale la memorizzazione e la conservazione dei dati. Negli hard disk i dati sono scritti sulla superficie di un disco, chiamato piatto, in forma magnetica; la testina, una per ogni faccia del piatto, permette di scrivere i dati proprio come se fosse la testina di un giradischi, senza però che avvenga un contatto fisico tra le due parti. I dati memorizzati nell’hard disk sono organizzati per cilindri, tracce e settori: i cilindri sono tracce concentriche poste sulla superficie del piatto, e ogni traccia è divisa in settori. Negli hard disk, a causa della loro sempre più elevata capienza, possono trovarsi più piatti e ogni loro faccia è dotata di testina; ogni hard disk ha dei settori riservati per le informazioni, che vengono utilizzate automaticamente in caso di malfunzionamento. Le caratteristiche tecniche dell’hard disk sono: • il tipo di interfaccia con la scheda madre, che può essere di vari tipi: EIDE SATA, o SCSI. Rispetto alla EIDE, la SCSI e la SATA sono interfacce decisamente più “professionali”. La grande potenza dello SCSI sta nel fatto che le diverse periferiche possono utilizzare il bus SCSI anche contemporaneamente, mentre con un controller EIDE due unità collegate allo stesso canale non possono occupare il bus contemporaneamente; 4 Hardware e software • la velocità di rotazione: più è elevata, maggiore sarà il numero di dati letti a parità di tempo; gli hard disk EIDE hanno in genere velocità massima pari a 7.200 giri al minuto, mentre quelli SCSI e SATA arrivano a 15.000 giri al minuto; • il tempo di accesso ai dati: indica il tempo necessario alla meccanica dell’hard disk per accedere ai dati memorizzati; più è basso, migliori saranno le prestazioni; • il buffer: è una piccola memoria interna all’hard disk che memorizza alcuni dati letti dalla testina ma non ancora inviati alla CPU per essere elaborati; permette di velocizzare le operazioni e, più è grande, migliori saranno le prestazioni; • il transfer rate: indica la velocità con la quale un hard disk legge i dati; in genere viene riportata la velocità massima che l’hard disk può sviluppare, ma questa in genere è raggiunta solo in condizioni particolari. Figura 1.5 Un hard disk BIOS (Basic Input/Output System): è un componente che fa parte integrante della scheda madre. Il suo scopo è quello di gestire la fase d’accensione del computer. Il BIOS conserva in una ROM la sequenza d’istruzioni di avvio che viene eseguita automaticamente a ogni accensione del computer. L’operazione di avvio è detta boot e passa per tre fasi successive: • test di funzionamento del sistema (verifica dell’hardware); • attivazione dell’hardware installato; • verifica della presenza del sistema operativo e suo caricamento. ROM (Read Only Memory): contrariamente alla RAM, la memoria ROM non esiste in forma di componente separato e individuale, esistono invece numerose piccole ROM incorporate all’interno dei vari circuiti integrati (sulla scheda madre, sulle schede d’espansione ecc.) come nel BIOS. Le schede di espansione sono schede che espandono le funzioni della scheda madre per pilotare dispositivi interni o esterni. La più importante è la scheda video su cui si connette il monitor. Molto diffusa, sebbene non strettamente necessaria per il funzionamento della macchina, è anche la scheda audio, attraverso cui il computer è in grado di produrre o registrare suoni. Per le connessioni dirette alla rete (senza modem) occorre invece dotarsi di una scheda di rete. Infine la scheda SCSI consente di pilotare dispositivi che richiedono una particolare velocità nel trasferimento dei dati. Esistono poi numerosi altri tipi di schede, create per funzioni particolari, quali per esempio la scheda di acquisizione video per collegarsi alla televisione, a un videoregistratore o a una videocamera, e molte altre ancora di uso specialistico. 5 C A P I TO L O 01 I dispositivi di Input/Output I dispositivi di I/O, o di Ingresso/Uscita, o periferiche esterne sono tutti quegli apparecchi che servono per il trasferimento di dati e informazioni fra il computer e il mondo esterno. Molti dispositivi sono collegati al computer dall’esterno (attraverso le porte di I/O), ma talvolta alcuni possono essere inseriti all’interno del computer stesso: per esempio il modem può avere la forma di una scheda di espansione. La tastiera si collega a una porta tipo PS/2 appositamente dedicata. Le tastiere moderne (dette “estese”, per contrasto con un vecchio tipo “standard”) possiedono 101 tasti (o 104 se adattate per Windows), divisi in 4 gruppi (figura 1.6). Figura 1.6 I 4 gruppi della tastiera La tastiera “base” è quella inglese che però non contiene le lettere accentate (perché in inglese non si usano), per questo motivo in molti paesi sono state adottate delle tastiere nazionali, sacrificando alcuni simboli poco usati come le parentesi graffe {} e la tilde ~ (presenti nella tastiera inglese) per sostituirli con simboli propri dell’ortografia nazionale. In Italia, per esempio, si usa una tastiera con le lettere accentate minuscole. In commercio si trovano anche modelli di tastiere ergonomiche, studiate per il comfort dell’utente (durezza dei tasti, sagomatura, inclinazione ecc.) in modo da ridurre al minimo l’affaticamento delle dita e dei polsi. Naturalmente le tastiere ergonomiche costano molto di più di quelle normali (figura 1.7). Figura 1.7 Una tastiera ergonomica 6 Hardware e software Il mouse fu introdotto assieme ai sistemi operativi di tipo grafico (Macintosh, Windows ecc.) per semplificare l’invio dei comandi alla macchina, comandi che in precedenza venivano impartiti unicamente attraverso la tastiera. Lo spostamento del mouse controlla il movimento di un puntatore sullo schermo, mentre i tasti inviano il comando. I mouse per Macintosh possiedono un unico tasto, quelli per Windows due o tre tasti (figura 1.8). Figura 1.8 Un mouse In alternativa al mouse, la trackball ne usa lo stesso meccanismo, avendo però la biglia sul lato superiore invece che sul lato inferiore (figura 1.9). Il movimento del cursore sullo schermo si comanda muovendo la biglia con le dita senza spostare la trackball. In questo modo non occorre lo spazio che serve invece per muovere il mouse. Lo svantaggio è una certa scomodità d’uso (minore precisione e rapido affaticamento delle dita), oltre a una maggiore tendenza a raccogliere polvere e sporcizia. La trackball è usata soprattutto sui portatili (che devono essere utilizzabili in ogni condizione, anche quando non c’è spazio per muovere un mouse), sebbene nei modelli recenti sia stata sostituita dalla touch pad, un’area rettangolare sensibile al tocco delle dita. Figura 1.9 Una trackball Quando si deve usare il computer per disegni di precisione (tecnici o artistici) il mouse è uno strumento del tutto inadeguato perché troppo difficile da controllare. Per questi casi esiste la tavoletta grafica, che comanda il cursore sullo schermo facendo uso di uno speciale stilo su un piano sensibile, esattamente come fosse una matita su un foglio di carta (figura 1.10). Serve solo con i programmi di grafica avanzata. 7 C A P I TO L O 01 Figura 1.10 Una tavoletta grafica I masterizzatori (figura 1.11) sono dispositivi usati per la scrittura su CD o DVD (il disco deve essere tale da consentire la scrittura, altrimenti il masterizzatore non funziona). Funzionano anche come normali lettori di CD o DVD. Tipicamente sono inseriti all’interno del computer e presentano uno sportello come i lettori CD/DVD, ma esistono anche dei modelli esterni che si collegano al computer con un cavo. Come gli HD (e altri dispositivi) esistono masterizzatori EIDE (più economici) e masterizzatori SCSI (più veloci). Figura 1.11 Un masterizzatore Gli Zip (figura 1.12) sono dispositivi simili ai drive floppy che usano un disco speciale (disco Zip) di capacità 70-170 volte superiore a quella dei normali floppy disk. Sono usati come “backup” (copie di sicurezza di grandi quantità di dati o documenti), oppure per trasferire grandi quantità di dati fra computer diversi. Esistono sia drive esterni collegati con un cavo, sia drive fissi inseriti all’interno del computer come quelli del floppy e del CD/DVD. Sia i dischi sia i drive sono prodotti esclusivamente da Iomega. Figura 1.12 Uno Zip Iomega 8 Hardware e software Lo scanner (figura 1.13) è un dispositivo che consente di acquisire testo e immagini stampate su carta per trasferirli all’interno del computer. I modelli più versatili consentono anche l’acquisizione direttamente da diapositiva o da negativo fotografico. Somigliano a piccole fotocopiatrici. Gli scanner migliori usano la tecnologia SCSI per collegarsi al computer. Figura 1.13 Uno scanner I modem (figura 1.14) si usano per la trasmissione e ricezione di dati attraverso la linea telefonica e in particolare per la connessione a Internet. I modem possono essere esterni al computer (collegati con un cavo) oppure interni (in forma di scheda di espansione), ma in quest’ultimo caso presentano spesso problemi di incompatibilità col resto dell’hardware. La velocità con cui i modem sono in grado di scambiare i dati si misura in Kbit/secondo (Kbps) ovvero il numero di bit che il modem riesce a trasferire in un secondo. Esistono quattro tipi principali di modem, a seconda del tipo di linea telefonica disponibile: standard, ISDN, ADSL e GSM. I modem standard esterni si collegano al PC attraverso la porta seriale. Figura 1.14 Un modem ADSL 9 C A P I TO L O 01 Le videocamere vengono usate per catturare immagini da elaborare o da trasmettere. Si va da videocamere professionali per riprese di alta qualità, a piccole videocamere dette webcam (figura 1.15) usate per trasmettere riprese video attraverso la rete. Figura 1.15 Una Webcam I monitor Il monitor rappresenta l’interfaccia di output per eccellenza e quindi il mezzo attraverso il quale possiamo visualizzare in modo diretto tutto quello che “succede” sul nostro personal computer. Attualmente i monitor presenti sul mercato sono i tradizionali monitor CRT, oppure quelli LCD-TFT, e per ognuna di queste famiglie esiste un’ampia varietà di prodotti che si differenziano per dimensioni, risoluzioni massime raggiunte, dispositivi opzionali quali porte USB, oppure Kit multimediali e altro ancora. Monitor CRT I monitor CRT (Cathode Ray Tube), cioè costituiti da un tubo a raggi catodici, sono tutt’oggi i più diffusi in campo informatico (figura 1.16). Questa tecnologia costruttiva risale a parecchie decine di anni fa, esattamente al 1897 per opera dello scienziato tedesco Ferdinand Braun. Figura 1.16 Schema di un tubo CRT 10 Hardware e software I monitor CRT si sviluppano attorno al loro componente fondamentale, cioè il sopra citato tubo catodico, e l’evoluzione tecnologica di questo componente ha caratterizzato anche l’evoluzione delle periferiche che lo adottano. L’offerta di mercato in questo settore è decisamente ampia e possiamo trovare sia periferiche con i “classici e tradizionali” tubi catodici, quelli che da sempre hanno caratterizzato i relativi monitor, sia quelle con tubi piatti, oppure corti, più recenti ed evoluti. Ovvio che l’introduzione di nuove tecnologie come quelle che caratterizzano le unità a tubo piatto (flat screen), o corto (short neck), hanno comportato la riduzione di prezzo delle periferiche standard. Un monitor CRT è semplicemente costituito da un tubo di vetro nel quale si realizza il vuoto, cioè si aspira tutta l’aria in esso contenuta, con una parte anteriore rivestita da fosfori, sostanze in grado di emettere luce se colpite da cariche elettriche in atmosfera rarefatta (figura 1.16); la struttura è molto simile a quella di un televisore domestico. Nei CRT abbiamo la presenza di un catodo che produce elettroni (cariche elettriche di segno negativo), i quali vengono “sparati” verso la superficie anteriore del tubo tramite un acceleratore di cariche che sfrutta un’elevata differenza di potenziale elettrico; questi elettroni acquistano una notevole energia in funzione della velocità raggiunta, essendo la loro massa molto limitata. Gli elettroni vanno a colpire la parte anteriore del tubo interagendo con il rivestimento in fosfori, in questo modo abbiamo la “conversione” della loro energia in luce e si vengono a creare delle immagini visibili dall’occhio umano. In generale nei CRT a colori abbiamo tre cannoni di elettroni, a differenza del singolo cannone presente nei monitor monocromatici oramai in disuso. Come sappiamo il nostro occhio reagisce ai tre colori primari verde, rosso e blu, e alle loro combinazioni che danno luogo a un numero infinito di colori. I fosfori presenti sulla superficie frontale del tubo catodico sono particelle molto piccole che il nostro occhio non è in grado di percepire e che riproducono questi tre colori primari; questi fosfori, come detto, vengono accesi se colpiti dagli elettroni generati dal catodo e sparati dai tre cannoni presenti nel CRT; ogni cannone viene abbinato a uno dei tre colori primari. I tre cannoni inviano elettroni sui vari fosfori, questi si accendono combinando i tre colori primari e formando le immagini con i colori voluti (figura 1.17). Figura 1.17 I tre cannoni È ovvio che per ottenere dei buoni risultati non è sufficiente il solo tubo catodico, ma anche un ottimo circuito di controllo, cioè tutta la parte elettronica che gestisce il funzionamento del monitor; questo è in genere quello che differenzia, da un punto di vista qualitativo, i monitor che montano lo stesso tubo catodico ma adottano differenti circuiti di controllo sviluppati da differenti costruttori. Come detto per ogni cannone abbiamo un fascio di elettroni che deve andare a colpire i fosfori di un ben determi11 C A P I TO L O 01 nato colore (verde, rosso o blu); è chiaro che bisogna evitare che il fascio di elettroni che deve colpire il fosforo rosso vada a colpire il verde, o il blu, e a tale scopo ci viene in aiuto la cosiddetta “maschera”, una vera e propria sorta di “mirino” costruito con particolari leghe metalliche, in grado di indirizzare con estrema precisione il fascio di elettroni nel punto desiderato. Esistono differenti tipologie di maschere e queste, a seconda di come sono costruite, vanno a caratterizzare i prodotti dei vari costruttori che le hanno ideate e realizzate. Le maschere più diffuse sono sostanzialmente due e vanno sotto il nome di Shadow Mask e Aperture Grille. La Shadow Mask (figura 1.18) è la maschera e quindi la tecnologia più diffusa nei monitor CRT; il principio su cui si basa è quello di anteporre allo schermo con i fosfori una griglia metallica che funziona come un mirino, cioè impedisce che un fascio di elettroni possa colpire il fosforo sbagliato e in un’area differente da quella voluta. Eccitando in modo differente i fosfori e quindi combinando in modo opportuno i tre colori primari si può ottenere nel punto desiderato il colore voluto. La distanza tra fosfori di ugual colore espressa in mm (millimetri) e che viene intesa come la distanza maggiore valutata misurando il lato dell’ipotetico triangolo che congiunge idealmente i centri di tre dot (misura fatta quindi sulla diagonale), cioè punti di ugual colore, prende il nome di dot pitch. Figura 1.18 La Shadow Mask L’Aperture Grille (figura 1.19) è la tecnologia adottata da alcuni costruttori con nomi quali Trinitron (per Sony) o Diamondtron (per Mitsubishi). In questa soluzione non abbiamo più la presenza di una griglia metallica forata come per la “Shadow Mask”, ma bensì una griglia formata da linee verticali composta da una serie di fili tesi dove i fosfori risultano disposti in strisce verticali di diverso colore (verde, rosso e blu) invece che a punti. Questo sistema assicura un ottimo contrasto per le immagini e una notevole saturazione dei colori che indirizzano a un campo applicativo di tipo professionale i monitor che ne sono provvisti. La minima distanza tra strisce del medesimo colore prende il nome di stripe pitch e, come per il dot pitch, minore è il suo valore e maggiore risulta la qualità dell’immagine. 12 Hardware e software Figura 1.19 L’Aperture Grille Tutte queste maschere sono costruite con appositi materiali, vedi per esempio il noto INVAR, cioè delle leghe metalliche aventi bassa deformabilità in modo tale che durante il funzionamento del monitor, e quindi con l’aumento delle temperature in gioco, non si verifichi un peggioramento delle immagini visualizzate a causa della loro dilatazione. Come detto, oltre al tubo catodico, nel monitor abbiamo un circuito che ha il compito di gestire il segnale che arriva direttamente dalla scheda video del PC. Il circuito in questione deve ottimizzare l’amplificazione del segnale e il funzionamento dei cannoni di elettroni che vanno a eccitare i fosfori creando, in questo modo, l’immagine a video. L’immagine che viene visualizzata sullo schermo del nostro monitor, a differenza di quanto ci possa apparire, non è fissa e stabile, ma è il risultato di un continuo accendersi e spegnersi di fosfori di differente colore, da sinistra verso destra e dall’alto verso il basso, con una frequenza così elevata da farci apparire l’immagine fissa (da cui deriva il nome di terminale a scansione raster, raster scan display). Il nostro occhio è in grado di “conservare” l’immagine visualizzata per un tempo molto limitato (fenomeno della permanenza retinica) mentre sullo schermo l’accensione del fosforo permane più di quanto non permanga sulla retina dell’occhio; come conseguenza abbiamo che se un punto si sposta lentamente sul video noi siamo in grado di coglierne lo spostamento, ma se tale punto si sposta molto velocemente, percorrendo in continuazione la stessa traiettoria in un numero di volte pari ad almeno 20 al secondo, l’effetto che otteniamo è che il nostro occhio non vedrà più un punto che si muove, ma bensì una linea continua fissa nel tempo. L’abilità del circuito nell’accendere e spegnere in modo opportuno i fosfori viene misurata dalla larghezza di banda che risulta proporzionale al numero di pixel (dimensione minima di un punto fisico) che vengono accesi e spenti in un secondo. La qualità di un monitor è data dalla somma di molti fattori quali, oltre al tipo di maschera e al valore del dot pitch, o stripe pitch, o slot pitch, la geometria dell’immagine, la sua nitidezza, la messa a fuoco e così via, aspetti che se risultano ottimizzati al meglio possono fare un’enorme differenza durante l’uso dello stesso, ma che inevitabilmente andranno a incidere sul prezzo di acquisto; vi posso comunque garantire che spendere qualche centinaio di euro in più per un buon monitor di qualità è una cosa che vale davvero la pena, senza considerare il fatto che, a differenza di altri componenti informatici, un monitor non è soggetto a sostituzioni nel breve o medio periodo e quindi il suo acquisto deve essere visto nell’ottica dell’investimento a lunga scadenza. 13 C A P I TO L O 01 La qualità dei monitor CRT sia per il numero di colori visualizzati sia per la qualità delle immagini alle alte risoluzioni di lavoro sia per la luminosità delle stesse, riveste ancora un ruolo di supremazia in questo specifico settore; apprezzabile in queste periferiche la facilità di poter variare senza il minimo decadimento della qualità delle immagini la risoluzione di lavoro e il numero dei colori, a differenza di quanto non siano in grado di fare attualmente le altre tecnologie quali LCD e TFT. Le caratteristiche di un monitor CRT Le caratteristiche fondamentali di un monitor CRT sono: dimensione, risoluzione e refresh. Queste tre caratteristiche vanno sempre considerate contemporaneamente quando deve essere valutata la qualità di un monitor, oppure ci si appresta ad acquistarne uno, dato che sono tra loro strettamente dipendenti. La risoluzione in un monitor è intesa come la dimensione dell’immagine visualizzata espressa dal numero di punti che ne costituiscono la larghezza e l’altezza; dire che un monitor ha una risoluzione di 640×480 punti vuol dire, in pratica, che l’immagine sarà formata da 640×480 = 307.200 punti, su di un rettangolo con base pari a 640 punti e altezza pari a 480 punti. Questo spiega il perché a una maggiore risoluzione corrisponda un maggior numero di contenuti visualizzati sullo schermo. È ovvio che la risoluzione deve essere adeguata alle dimensioni del monitor, altrimenti si corre il rischio di avere immagini così rimpicciolite che risulteranno difficilmente visionabili. La risoluzione adottabile dipende da alcuni fattori quali, ovviamente, le caratteristiche del monitor, della scheda video e del quantitativo di memoria della stessa che limita anche il numero massimo dei colori visualizzabili. Esistono alcuni parametri, legati alle caratteristiche costruttive del tubo CRT, che vengono commercialmente assunti dai vari costruttori per definire la qualità delle loro periferiche; questi parametri, quali per esempio il dot pitch, consentono, a noi potenziali acquirenti, di meglio valutare, almeno sulla carta, la qualità costruttiva del monitor; non sempre, però, viene fornito il dot pitch così come risulta dalla sua stessa definizione e questo può rendere più complesso valutare la qualità della periferica. Come detto il dot pitch rappresenta la misura del lato maggiore di un triangolo ideale ai vertici del quale abbiamo i tre dot, o punti, del medesimo colore; la distanza tra dot del medesimo colore può essere misurata in differenti modi ottenendo misure inferiori a quelle del reale dot pitch; questo potrebbe trarre in inganno l’acquirente per quanto concerne le reali caratteristiche qualitative del monitor in oggetto. Nell’immagine successiva (figura 1.20) possiamo visualizzare meglio questo concetto; in un monitor con dp pari a 0,27mm la distanza tra i dot sull’orizzontale è di 0,22 mm e sulla verticale di 0,16 mm. Figura 1.20 Il dot pitch 14 Hardware e software La scelta della dimensione è strettamente legata all’uso che faremo del nostro PC e quindi, per esempio, sarà in base alla tipologia dei programmi utilizzati, vedi word processing, CAD, programmi di fotoritocco ecc.; è ovvio che a seconda del campo applicativo avrò la necessità di dover visualizzare un numero più o meno elevato di dettagli. In commercio ci sono unità con dimensioni variabili tra i 15 e i 24; in genere è bene ricordare che la dimensione di un monitor viene intesa come la lunghezza in pollici misurata lungo la sua diagonale (figura 1.21) e che l’effettiva area di visualizzazione è inferiore a quella dichiarata dal costruttore e che possiamo definire “commerciale”, dato che parte dello schermo rimarrà nascosta dal case plastico del monitor; questo si traduce in una diagonale effettiva più corta di circa 1,2-2 (vedi tabella 1.1). Figura 1.21 Le dimensioni di un monitor Tabella 1.1 Dimensione nominale Dimensione effettiva 14 12,5-13 15 13,5-14 17 15,5-16 19 17,5-18 21 19,5-20 24 21,5-22 La frequenza verticale, meglio nota come refresh rate, espressa in Hz (Hertz), indica il numero di volte che nel tempo pari a 1 secondo l’immagine a video viene completamente ridisegnata; questo è il parametro che può caratterizzare lo sfarfallio del monitor se non adeguato alla risoluzione impostata. L’analisi di questa frequenza deve essere coadiuvata dalla conoscenza delle caratteristiche della nostra scheda video e quindi di quelli che sono i valori massimi di refresh e le relative massime risoluzioni impostabili. Per evitare il classico e fastidioso sfarfallio che ci impedisce di poter usare il monitor ad alcune risoluzioni, bisognerebbe verificare il valore di refresh per ogni risoluzione e assicurarsi che per ognuna di esse il refresh rate non scenda mai al di sotto degli 85 Hz; questo ci garantirà di poter lavorare a lungo davanti al nostro monitor senza che la nostra vista ne possa in qualche modo risentire. Il massimo refresh è 15 C A P I TO L O 01 ovviamente in funzione della scheda video che lo deve produrre e del monitor che lo deve sopportare. In tabella 1.2 sono indicate le minime e severe frequenze di refresh abbinate alle varie risoluzioni considerate dalla nuova normativa TCO 99. Tabella 1.2 Dimensione Frequenza di refresh Risoluzione 14-15 85 Hz 800×600 17 85 Hz 1024×768 19 85 Hz 1280×1024 20-21 85 Hz 1280×1024 24 75 Hz 1600×1200 Altro parametro da prendere in considerazione e che caratterizza i monitor dell’ultima generazione è la multifrequenza, cioè la capacità da parte della nostra periferica di autoregolarsi secondo la frequenza che viene impostata direttamente dalla scheda video; abbinata a questa caratteristica abbiamo alcuni nomi commerciali che alcuni costruttori hanno dato ai loro prodotti come “multisync” o “multiscan”. Altro aspetto importantissimo è verificare se il monitor alla sua risoluzione ottimale di lavoro, o a quelle che avremo intenzione di sfruttare, funzioni in modalità non interfacciata; in pratica l’immagine a video si forma riga per riga è può essere costruita in due differenti modi: A. modalità interlacciata: vengono prima tracciate tutte le linee dispari e poi tutte le pari, quindi la riga 1, 3, 5, 7 ecc. e poi ripartendo sempre dalla parte alta del video le linee 2, 4, 6 ecc.; B. modalità non interlacciata: le linee vengono tracciate in un solo passaggio una dopo l’altra e quindi la linea 1, 2, 3, 4 ecc.; questo comporta una maggiore stabilità dell’immagine e l’assenza dello sfarfallio, dato che si riesce a formare l’immagine a video in tempi più brevi. I monitor LCD Oltre alla tecnologia CRT, che rimane di gran lunga la più diffusa nel mondo dei monitor per PC, un’altra interessante tecnologia, quella denominata LCD (Liquid Crystal Display) si sta sempre più diffondendo e a detta di molti sostituirà completamente, in un prossimo futuro, la CRT. I monitor che sfruttano la tecnologia LCD (figura 1.22) sono le cosiddette periferiche a cristalli liquidi, cioè costituiti da una particolare sostanza il cui stato fisico è a metà strada tra un solido e un fluido; questa sostanza possiamo ritenerla composta da tante piccole “bacchette o filamenti” orientabili. La scoperta dei cristalli liquidi avvenne nel lontano 1888, ma le prime applicazioni risalgono ad anni più recenti ed ebbero inizio nel momento in cui si scoprì che le piccole “bacchette” che li componevano, sotto lo stimolo di un opportuno campo elettrico, potevano modificare il proprio orientamento, in modo tale da modificare le caratteristiche del fascio di luce che le attraversava. 16 Hardware e software Figura 1.22 Un monitor LCD Sulla base di questa scoperta e con gli studi successivi che vennero effettuati, si riuscì a trovare un legame tra stimolo elettrico e orientamento dei cristalli, tale da consentire la visualizzazione di immagini. Le prime applicazioni furono nel campo dei display per le calcolatrici e successivamente nei monitor dei PC portatili; attualmente gli enormi progressi compiuti in questo campo hanno permesso di avviare un nuovo e interessante processo produttivo di monitor LCD per PC da tavolo approdando anche, pochi anni or sono, al colore. È lecito domandarsi se questa tipologia di periferiche avrà lo stesso e roseo successo che ha caratterizzato i CRT nella loro continua e progressiva evoluzione e diffusione e se mai in un domani, più o meno prossimo, i monitor LCD potranno sostituire i più diffusi CRT. La domanda non è certo di immediata e facile risposta anche se molti sono gli aspetti positivi che vengono apprezzati nei monitor LCD quali, su tutti, l’ergonomia, cioè la possibilità di poter disporre di periferiche di dimensioni ottimali di 17 o 18, ma con un ingombro drasticamente inferiore a quello dei CRT; ovvio che il minor ingombro si traduce in un minor peso e quindi in una maggiore facilità nel trovare la posizione ottimale sulle nostre scrivanie per lo stesso. CRT vs LCD Le dimensioni di uno schermo LCD sono quelle effettivamente sfruttabili con le immagini a video e non inferiori alla dimensione commerciale che si attribuisce ai CRT; come ben sappiamo su un CRT la dimensione effettiva del video è inferiore a quella della classe dimensionale di appartenenza per il fatto che parte dello schermo rimane inglobato nel case plastico della periferica; in genere si ha uno scarto che varia tra 1 e 2 pollici misurati sulla diagonale, quindi un CRT da 17 ha un’effettiva diagonale variabile tra i 15 e i 16 pollici, mentre un LCD da 15 ha una effettiva diagonale di 15: è quindi, in pratica, comparabile a un CRT da 17. Altro aspetto apprezzato è la totale assenza di emissioni dannose per la vista, il minor consumo energetico. Ovviamente non è tutto oro quello che luccica e i punti “negativi” non sono certo pochi; come meglio evidenzieremo in seguito, le caratteristiche dei monitor LCD fanno sì che la qualità delle immagini, sotto alcuni aspetti, non sia ancora all’altezza dei CRT, dato il minor numero di colori visualizzabili, la minor luminosità alle 17 C A P I TO L O 01 alte risoluzioni (sono periferiche retroilluminate), la limitata possibilità di modificare la risoluzione a video senza incidere drasticamente sulla qualità delle immagini a causa dell’architettura grid array ecc. Questa architettura si basa sul seguente concetto: il display è composto da un numero di celle pari alla massima risoluzione visualizzabile, dove a ogni cella corrisponde un pixel; al variare della risoluzione la qualità dell’immagine cala perché sarà formata da un’interpolazione dei colori tra le varie celle. Altro aspetto “negativo”, o che comunque sulla base della dotazione hardware dell’utente finale può incidere sulla qualità delle immagini a video, risiede nel fatto che la tecnologia su cui si basano gli LCD è di tipo digitale, mentre la maggior parte delle schede video in commercio rende disponibile un segnale analogico; questo comporta una doppia conversione del segnale da digitale ad analogico nel PC e da analogico a digitale nel monitor LCD. I monitor LCD sono dotati di un convertitore DA (analogico/digitale) che incide in maniera significativa sul costo finale della periferica e, come detto, sulla qualità dell’immagine. Questa conversione che non avviene quasi mai in modo ottimale obbliga l’utente a effettuare delle opportune regolazioni intervenendo sui “disturbi” del segnale, sul contrasto, sulla regolazione del clock e della fase ecc. L’ultimo punto “dolente” è quello che viene definito angolo di visione, in sostanza la massima inclinazione che possiamo assumere nei confronti del nostro monitor senza che ne venga pregiudicata la qualità dell’immagine osservata, e questo sia in direzione orizzontale sia verticale; i CRT emettono luce in tutte le direzioni è sono quindi caratterizzati da un ampio angolo di visione mentre gli LCD hanno un campo più limitato e sempre più numerose sono le tecnologie che i vari costruttori stanno sviluppando per sopperire a questa particolare, e non trascurabile, limitazione. Com’è fatto e come funziona un monitor LCD I “cristalli liquidi” furono scoperti più di 100 anni fa constatando che determinate sostanze con struttura cristallina tipica di un solido, se opportunamente riscaldate, assumevano una consistenza semiliquida, pur mantenendo una struttura cristallina al proprio interno; i cristalli, a una osservazione microscopica, appaiono come delle piccole bacchette o, meglio ancora, filamenti, ed è per questo che prendono il nome di nematici, dal greco “nemo”, cioè filo. Oltre ai nematici esistono altre tipologie di cristalli liquidi, ma sono poco utilizzati nella costruzione di display LCD. In queste pagine riporterò alcuni disegni tratti da un interessante sito in lingua inglese (The PC Techonology Guide), che renderanno meglio interpretabili le parti descrittive. I “filamenti cristallini” facendo parte di una sostanza semifluida sono caratterizzati da una certa libertà di movimento e inoltre rifrangono i fasci di luce su di essi incidenti; ovvio che la rifrazione del fascio luminoso varierà a seconda dell’orientamento degli stessi. Questi piccoli “filamenti” sotto lo stimolo di un apposito campo elettrico possono modificare il proprio orientamento e di conseguenza modificare le caratteristiche del fascio di luce che li attraversava. I monitor LCD sono costituiti da sette strati fondamentali; partendo dalla zona centrale abbiamo due pannelli di vetro che racchiudono i cristalli liquidi; questi pannelli presentano delle scanalature che vanno a orientare i cristalli facendogli assumere una particolare configurazione a elica (figura 1.23). Tali scanalature infatti, sono disposte in modo tale che siano parallele su ogni pannello, ma perpendicolari tra i due pannelli (figura 1.24). 18 Hardware e software Figura 1.23 La configurazione a elica Figura 1.24 Le scanalature perpendicolari tra i due pannelli Le scanalature rettilinee sono ottenute posizionando sui due pannelli di vetro delle sottili pellicole trasparenti di materiale plastico che vengono opportunamente trattate. I cristalli venendo in contatto con le scanalature si orientano di conseguenza; le scanalature tra i due pannelli sono tra loro ortogonali; i cristalli, passando da un pannello all’altro sono obbligati a subire una torsione di 90° assumendo, come detto, una configurazione a elica. La tecnologia ora descritta va sotto il nome di Twisted Nematic (TN), cioè cristalli nematici ruotati. I due pannelli sono tra loro molto vicini, si parla di una distanza di circa 5 milionesimi di millimetro. Se i cristalli vengono attraversati da un fascio di luce, questo segue l’andamento della disposizione dei cristalli e quindi subisce una rotazione di 90° nel passaggio da un pannello all’altro. L’applicazione di una tensione elettrica causa l’orientamento dei cristalli nella direzione del campo elettrico generato, si perde la precedente disposizione a elica e si realizza una nuova disposizione ordinata dei cristalli in direzione verticale e non più orizzontale; la luce attraversa direttamente i cristalli senza subire la rotazione di 90°. Questo diverso comportamento del fascio luminoso non può essere colto dall’occhio umano se non adottando opportuni filtri polarizzanti. Questi filtri hanno la caratteristica di far passare la luce solo lungo prefissati assi e quindi di non farla diffondere, come di consueto, a 360°; in pratica se noi andiamo ad allineare l’asse del filtro con quello delle scanalature sul vetro, la luce entra allineata con le scanalature, incontra i cristalli disposti lungo un’elica e arriva al secondo vetro allineata con i solchi lì presenti e quindi il secondo filtro farà passare integralmente tutto il fascio di luce, ma se applichiamo una differenza di potenziale tale da orientare 19 C A P I TO L O 01 i cristalli e far passare la luce senza la caratteristica rotazione a elica, il fascio di luce giungerà sul secondo vetro perpendicolarmente ai solchi e quindi non potendo uscire, dato che il secondo filtro lo blocca, vedremo lo schermo completamente nero (il fascio di luce viene catturato). Posizionando un elevato numero di elettrodi che generano differenze di potenziali in differenti punti dello schermo, le cosiddette celle di cristalli liquidi, si è in grado di riprodurre in zone molto limitate e localizzate questo fenomeno e gestendo in modo opportuno il loro funzionamento si è anche in grado di rappresentare immagini, lettere ecc.; gli elettrodi, essendo costruiti di materiale plastico trasparente possono essere realizzati con qualunque forma. L’evoluzione tecnologica ha permesso di rendere queste “celle” molto piccole, in pratica dei piccoli punti, aumentando di conseguenza la risoluzione degli schermi LCD, ogni punto corrisponde a un pixel, e consentendo di visualizzare immagini complesse con buona definizione. LCD a colori e a matrice attiva L’impiego del colore ha comportato la necessità di dover retro illuminare gli schermi, facendo in modo che la luce venisse generata nella parte posteriore del display LCD; ciò consente un’ottimale visione dell’immagine anche in condizioni di scarsa luminosità nell’ambiente circostante, a differenza dei precedenti dispositivi che realizzavano la retro illuminazione riflettendo, con uno specchio, la luce che arrivava dall’ambiente circostante. I colori vengono ottenuti con l’impiego di tre filtri che riproducono i tre colori fondamentali rosso, verde e blu e facendo passare il fascio di luce attraverso i filtri stessi. Combinando per ogni singolo punto, o pixel, dello schermo questi tre colori fondamentali, siamo in grado di riprodurre il colore voluto nel punto desiderato; la combinazione dei tre colori base si ottiene gestendo in modo opportuno gli elettrodi che puntualmente generano la differenza di potenziale necessaria per orientare i cristalli. Nell’immagine (figura 1.25) possiamo vedere, in sezione, quello che è la struttura tipica di un LCD a colori con i filtri colorati, gli elettrodi trasparenti e i due piani che orientano “meccanicamente” i cristalli. Figura 1.25 La struttura tipica di un LCD a colori 20 Hardware e software I primi display LCD avevano dimensioni molto contenute, circa 8 pollici di diagonale, mentre oggi possiamo arrivare ai 15 sui NoteBook e oltre i 20 per i display LCD per desktop. All’aumento delle dimensioni si è ovviamente associato l’aumento della risoluzione di questi schermi e questo ha introdotto nuove problematiche risolte adottando particolari tecnologie alle quali faremo ora un breve accenno. LCD a matrice passiva vs LCD a matrice attiva Prima abbiamo parlato di matrice passiva; il termine matrice viene introdotto per la caratteristica suddivisione dello schermo in punti, ognuno dei quali viene indirizzato separatamente dagli altri e quindi separatamente dagli altri può essere acceso o spento a piacere, intervenendo sui prima citati elettrodi, per la formazione delle immagini a video. Si denomina passiva perché la tecnologia ora descritta per la produzione dei display LCD, tecnologia più economica attualmente utilizzata, non è in grado di mantenere per lungo tempo le informazioni a video e inoltre per creare delle immagini necessita sempre della presenza di un campo elettrico; le immagini si formano riga per riga, con il campo elettrico che passa da una riga all’altra provocandone l’accensione e la successiva dissolvenza, appena il campo stesso viene disattivato in quel punto; una volta tolto il campo elettrico l’immagine progressivamente si dissolve perché i cristalli rimangono in posizione orientata solo per qualche secondo. I display ora descritti hanno dei grossi limiti per quanto concerne l’aspetto qualitativo e applicativo, hanno infatti un’immagine non perfettamente nitida e tendenzialmente sfarfallante; l’uso di cristalli lenti, dato che rimangono in posizione anche dopo aver tolto il campo elettrico, non permette una corretta visualizzazione di immagini in movimento. Non meno trascurabile è il problema dell’interferenza tra i vari elettrodi che si manifesta sotto forma di aloni sul display. Risultati molto migliori sia per quanto concerne la stabilità, la qualità, la risoluzione, la nitidezza e la brillantezza dell’immagine si possono ottenere con gli schermi a matrice attiva che a fronte della maggiore qualità contrappongono, purtroppo, un costo molto più alto. La matrice attiva offre notevoli vantaggi rispetto a quella passiva, quali per esempio la maggiore luminosità e la possibilità di guardare lo schermo anche con inclinazioni fino a 45° senza perdere in qualità di immagine, cosa impensabile con la passiva che in pratica consente una visione ottimale solo da posizione frontale rispetto al display; possiamo visualizzare immagini in rapido movimento senza il fastidioso effetto scia e senza sfarfallii, dato che il tempo di risposta di un display a matrice attiva è di circa 50 ms rispetto ai 300 della passiva, inoltre si ha una qualità nel contrasto superiore a quella offerta dai monitor a tubo catodico CRT. È proprio in base a questa elevata qualità di visualizzazione delle immagini che si è pensato di estenderne il campo applicativo dai NoteBook ai Desktop, ottenendo dispositivi poco ingombranti e molto meno nocivi per la salute degli operatori rispetto ai tradizionali monitor a tubo catodico. Con la matrice passiva i vari elettrodi ricevono ciclicamente una tensione elettrica; man mano che il display viene rigenerato per linee abbiamo che l’eliminazione del campo elettrico comporta il progressivo dissolvimento dell’immagine, dato che i cristalli ritornano progressivamente nella loro configurazione originaria; nella matrice attiva, invece, si è abbinato a ogni elettrodo un transistor di memoria in grado di memorizzare un’informazione digitale (numero binario 0 o 1) e quindi di mantenere quella determinata immagine fino al ricevimento di un altro segnale. 21 C A P I TO L O 01 Dato che il tentativo di ritardare il dissolvimento dell’immagine nei display a matrice passiva veniva parzialmente raggiunto con strati maggiori di cristalli liquidi per aumentarne l’inerzia e quindi rallentarne i movimenti, ora abbiamo la possibilità di ridurre fortemente lo strato di cristalli liquidi presente. I transistor, come gli elettrodi, devono essere fabbricati con materiali trasparenti per evitare di bloccare il passaggio del fascio luminoso e vengono poi posizionati sul retro del display su uno dei pannelli di vetro che contengono i cristalli liquidi; a tale scopo si impiegano delle pellicole di materiale plastico Thin Film Transistor, transistor a film sottile, da cui la nota sigla TFT, caratterizzate da uno spessore sottilissimo tra 1/10 e 1/100 di micron. Considerando lo spessore del Thin Film Transistor, la tecnologia impiegata per la costruzione dei transistor non può che essere altamente sofisticata, ma purtroppo non certo esente da possibili difetti qualitativi sul prodotto finale anche perché il numero di transistor utilizzati è decisamente alto; basti pensare a un display in grado di visualizzare immagini con una risoluzione di 800×600 in modalità SVGA e con soli 3 colori e al fatto che in esso abbiamo la presenza di ben 1.440.000 transistor individuali per capire quanto risulta delicata la costruzione di monitor con risoluzioni e numero di colori sempre più elevato. I vari costruttori limitano a un certo numero il quantitativo di transistor che possono risultare difettosi in un display LCD, per stabilire se il prodotto ottenuto è buono oppure deve essere scartato. Diventa quasi inevitabile riscontrare anche in unità di fascia alta dei transistor difettosi che si presentano sottoforma di pixel, cioè punti, difettosi. Come specificato in precedenza, sulla base delle nuove normative, ci sono delle classi qualitative che meglio evidenziano il numero limite di pixel difettosi e anche la loro tipologia. Ognuno di noi potrà condurre delle semplicissime prove per evidenziare questi difetti e valutare direttamente se il tutto rientra nei limiti dichiarati dal costruttore; alternando sullo schermo uno sfondo completamente nero, bianco, verde, rosso o blu possiamo individuare sia il numero sia la tipologia di pixel difettosi. Le schede grafiche La scheda grafica (figura 1.26) è composta da uno o più processori grafici, dalla memoria video e dal ramdac. La scheda grafica lavora in parallelo con la CPU, facendosi carico dei processi riguardanti la grafica (maggiore è il livello di implementazione in hardware della pipeline grafica da parte della scheda, migliori saranno le prestazioni grafiche del computer). Figura 1.26 Una scheda grafica 22 Hardware e software Il processore grafico è il cuore della scheda video e a esso sono associate alcune funzioni fondamentali quali la gestione della memoria video e le funzioni per la generazione della grafica bidimensionale (filling di superfici, blitting di porzioni di immagine ecc.), più una serie di funzionalità quali quelle per la generazione della grafica tridimensionale (implementazione in hardware di molte operazioni per la creazione di una scena 3D: Goudard shading, clipping ecc.). Anche su una scheda video è presente il BIOS. Questo di certo non ha le stesse funzionalità di quello presente sulla motherboard, infatti in questa memoria di tipo ROM sono registrate tutte le informazioni necessarie per il corretto funzionamento quali per esempio la versione del chip, la quantità di memoria presente sulla scheda ecc. Il ramdac ha il compito di trasformare i dati digitali che rappresentano il colore di ogni pixel in segnali elettrici adeguati e con i quali esternamente viene pilotato il monitor. Il controller si occupa di “calibrare” l’intensità con la quale occorre colpire i fosfori. Esso converte il contenuto in bit di un pixel in un livello di intensità, cioè la quantità di corrente sparata dal cannone per illuminare i fosfori. Il tipo e la quantità di memoria video di cui è dotata la scheda gioca un ruolo importante nella risoluzione massima ottenibile e nel numero di colori che è possibile visualizzare. La RAM video è del tipo VRAM (Video RAM) più veloce ma anche più costose delle memorie ad accesso singolo. Oggi sulle schede grafiche sono montate memorie di tipo DDR (Double Data Rate). La memoria video La memoria video costituisce un componente fondamentale delle schede video: in pratica ogni volta che viene creata una schermata, sia con contenuto grafico (tipico dell’ambiente Windows) sia in modo testo (tipico dell’ambiente Dos) viene coinvolta la RAM video. Una parte della RAM video viene sfruttata per la creazione del frame buffer, una matrice in cui viene memorizzata l’immagine digitale da visualizzare. Le dimensioni della matrice (cioè la sua risoluzione) dipendono dalla quantità di RAM video. La risoluzione del frame buffer è di due tipi: grafica e cromatica. Per risoluzione grafica si intende il numero di unità fondamentali di cui è composta l’immagine. Questa unità di base prende il nome di pixel. Questa viene indicata con due numeri che indicano rispettivamente il numero di pixel presenti su ogni riga e il numero di righe in cui l’immagine è stata suddivisa. La risoluzione cromatica (color depth) serve per definire la qualità di visualizzazione, cioè quanti colori possono essere assunti da ogni pixel. Per visualizzare un’immagine in B/N di 640×480 pixel servono approssimativamente 38 KB di VRAM (1 bit*640*480/8 = 38.400 byte); nel caso di un’immagine in scala di grigio (a 8 bit) la quantità di VRAM necessaria sale a circa 300 KB (8*640*480/8). Se invece vogliamo visualizzare un’immagine RGB (24 bit) abbiamo bisogno di quasi 1 MB (moltiplichiamo per 3 il risultato della precedente formula) (tabella 1.3). Nelle schede grafiche più recenti, la memoria video supera di gran lunga gli 8 MB necessari per la visualizzazione. La memoria video in più che viene montata sulle schede grafiche di ultima generazione viene utilizzata per supportare la grafica 3D e 23 C A P I TO L O 01 le animazioni. In particolare un’altra quantità di memoria identica per dimensioni a quella utilizzata per il frame buffer, denominata double buffer, contiene le informazioni sul frame che verrà visualizzato sul monitor l’istante successivo. Altra RAM video viene sfruttata per lo Z-Buffer, area della memoria video che serve per la gestione della profondità in una scena 3D. Tutto il resto della memoria video disponibile è in genere utilizzato per texture mapping. Tabella 1.3 Quantità minima di RAM video per risoluzione e numero di colori. Risoluzione 16 colori (4 bit) 256 colori (8 bit) 65.000 colori (16 bit) 16,7 milioni colori (24 bit true color) 640×480 500 KB 500 KB 1 MB 2 MB 800×600 500 KB 1 MB 2 MB 2 MB 1024×768 1 MB 1 MB 2 MB 4 MB 1280×1024 1 MB 2 MB 4 MB 4 MB 1600×1200 2 MB 2 MB 4 MB 8 MB 1800×1440 2 MB 4 MB 8 MB 8 MB Come funziona una scheda video La scheda video è il componente responsabile della traduzione delle istruzioni che la CPU invia al monitor in un linguaggio a questo comprensibile. Poiché queste istruzioni riguardano qualsiasi elemento visualizzato sullo schermo, non solo grafica, ma anche lettere e segni di punteggiatura che viene digitata con un qualsiasi editor di testi, si comprende come la mole di lavoro a cui la scheda video è sottoposta sia notevole. La procedura di visualizzazione può essere schematizzata da 4 fasi principali: • i dati in partenza dal processore centrale vengono inviati tramite il bus al processore video che provvede alla loro elaborazione; • dal processore video i dati passano alla memoria video dove viene registrata in forma digitale una copia dell’immagine che dovrà essere visualizzata sul monitor; • i dati procedono poi verso il RAMDAC che li converte a vantaggio del monitor; • l’ultimo passaggio consiste nell’invio dei dati dal RAMDAC al monitor stesso. Ogni passaggio rappresenta un rallentamento dell’intera procedura; il passaggio più lento determina la rapidità con cui si svolge l’intera procedura. Se nel primo caso il responsabile del rallentamento sono principalmente elementi estranei alla scheda video e precisamente la scheda madre e il bus interno, i due passaggi successivi sono effettuati internamente alla scheda video e costituiscono l’aspetto più importante e impegnativo per questo componente e quindi il criterio più utile per valutarne le prestazioni. La memoria video infatti, è sollecitata in continuazione; da un lato c’è 24 Hardware e software il processore che scrive sulla memoria ogni volta che l’immagine sul monitor viene modificata (e ciò avviene in continuazione poiché è sufficiente spostare il puntatore del mouse), dall’altro c’è il RAMDAC che deve leggere i dati inviati alla memoria video con la stessa frequenza. A questo punto, è chiaro che il vero collo di bottiglia di tutto il sistema è rappresentato proprio dalla memoria video. I produttori di questo componente hanno affrontato il problema in vari modi. Il primo consiste nel rendere la memoria video accessibile da due parti contemporaneamente, in modo che il processore video e il RAMDAC non debbano attendere l’uno la fine delle operazioni dell’altro (memoria DDR). Una seconda tecnica consiste nell’incrementare le dimensioni del bus della memoria video. Terza e ultima soluzione: aumentare la velocità di clock del bus che presiede allo scambio di informazioni tra processore video, memoria video e RAMDAC. I vari tipi di schede video Le schede video meno recenti erano tipicamente schede video 2D, così denominate per sottolineare l’assoluta mancanza di qualsiasi funzione di accelerazione 3D. Se si utilizzano esclusivamente applicazioni da ufficio, una buona scheda 2D è, tutt’oggi, più che sufficiente in quanto è quella che influisce sulla velocità di scorrimento di testo e grafica, sulla rapidità con cui si aprono e chiudono nuove finestre e via dicendo: si tratta di soluzioni relativamente poco costose e di facile reperibilità, poiché i produttori e relativi modelli sono numerosi e, almeno a grandi linee, equiparabili tra loro. Attualmente le schede video sono progettate per il bus PCI o il bus AGP. Il bus PCI è un canale di comunicazione a 32 bit capace di operare a una velocità massima di 33 MHz. Con l’introduzione di sistemi sempre più potenti, tuttavia, il bus PCI ha subito delle modifiche fino ad arrivare al bus PCI versione 2.1, un canale a 64 bit in grado di funzionare a 66 MHz. La velocità del bus PCI può essere impostata in modalità sincrona o asincrona, a seconda del chipset e della scheda madre utilizzata. Se si utilizza la modalità sincrona, la velocità del bus PCI è sempre uguale alla metà della velocità del bus di memoria. Se si utilizza la modalità asincrona, invece, la velocità del bus PCI è indipendente da quella del bus di memoria, e può essere impostata al massimo delle sue capacità. La tecnologia AGP, invece, è stata introdotta per soddisfare le necessità sempre più impellenti di disporre di adattatori grafici abbastanza veloci da poter sfruttare pienamente le enormi capacità dei computer correnti. Il bus AGP è stato progettato per essere interamente dedicato alla grafica e fornisce un’interfaccia estremamente veloce tra il processore video e il processore centrale. Per ottenere la rappresentazione grafica di un oggetto tridimensionale è necessario passare attraverso due fasi, la descrizione geometrica dell’oggetto in un sistema di assi cartesiani in tre dimensioni e la successiva rappresentazione bidimensionale dipendente dal punto di vista dell’osservatore. Con un software di grafica 3D, quindi, si creano gli oggetti in uno spazio tridimensionale virtuale descritto matematicamente nella memoria del computer; il passaggio successivo consiste nell’inviare sullo scher- 25 C A P I TO L O 01 mo del PC una specie di “fotografia” scattata sullo scenario contenuto in memoria. La differenza di questo tipo di gestione grafica, rispetto a quella tradizionale in due dimensioni, risulta più chiara con il classico esempio della cartolina. In pratica è la stessa differenza che c’è tra l’osservare una cartolina di un paesaggio e trovarsi dentro il paesaggio stesso. Nel primo caso si può vedere solo l’immagine realizzata dal fotografo, mentre nel secondo ci si può spostare liberamente, a 360 gradi, per osservare ogni cosa da un punto di vista diverso. In entrambe le situazioni il risultato finale sarà sempre un’immagine in due dimensioni rappresentata sullo schermo del PC, ma con la fondamentale differenza che la gestione 3D permette di ottenere rappresentazioni dinamicamente variabili degli scenari e degli oggetti, con tanto di animazioni ed effetti speciali. Con un programma o un gioco in due dimensioni si possono osservare solo le immagini create in origine dall’autore del software, mentre con un gioco 3D è possibile spostarsi liberamente in uno spazio tridimensionale virtuale. Tutto questo, però, comporta non poche difficoltà: mentre per generare le tradizionali immagini bidimensionali è sufficiente “disegnarle” sotto forma di bit nella memoria lineare della scheda grafica (frame buffer), per creare invece la rappresentazione di un oggetto tridimensionale è necessario gestire una dimensione in più in una memoria dedicata detta Z-buffer. Si passa, quindi, da un tipo di grafica basata sulla sovrapposizione di piani per mezzo del trasferimento di grossi blocchi di bit (bit block transfer) a un tipo completamente diverso basato sulla descrizione matematica degli oggetti nello spazio. Ciò richiede una notevole potenza di calcolo da parte del computer, che deve realizzare milioni di operazioni matematiche su matrici di punti per generare in tempo reale la rappresentazione in due dimensioni dello scenario 3D contenuto in memoria. Queste operazioni possono essere realizzate dai cosiddetti “motori di rendering” software, cioè particolari programmi in grado di eseguire le operazioni richieste sfruttando la potenza di calcolo della CPU di sistema. In questo caso, però, si incontrano seri limiti quando si lavora con immagini a elevata risoluzione e con molti colori; inoltre per rendere più realistico uno scenario 3D è necessario applicare una serie di “filtri” all’immagine, per esempio per correggere l’effetto mosaico di alcuni motivi di riempimento (bilinear filtering e mip mapping) o per correggere la prospettiva, è necessario aggiungere effetti di illuminazione (specular highlights e depth cueing), di nebbia (fogging) e di trasparenza (alpha blending). Per ottenere una rappresentazione realistica di uno scenario 3D con una risoluzione di almeno 640×480 punti, con 65.536 colori e con una frequenza di 30 fotogrammi generati ogni secondo, è necessario utilizzare un meccanismo di accelerazione hardware dedicato, cioè di una scheda grafica che sia in grado di svolgere autonomamente questi calcoli. Le porte di Input/Output Le porte di I/O (figura 1.27) sono una serie di prese, localizzate sul lato posteriore del computer, che vengono utilizzate per collegare alla macchina tutti i dispositivi esterni (monitor, tastiera, mouse ecc.). La disposizione delle porte varia da computer a computer. 26 Hardware e software Tipicamente sono poste direttamente sulla scheda madre le seguenti porte: • porte PS/2 per il collegamento del mouse e della tastiera (una è dedicata al mouse e l’altra alla tastiera; non si possono invertire); • porta seriale per il modem, o in generale per dispositivi che non richiedono un flusso di dati molto veloce (fino a qualche anno fa veniva usata anche per il mouse); • porta parallela si usa quasi sempre per la stampante, ma in generale è adatta per qualunque dispositivo che richieda un flusso di dati più veloce rispetto alla capacità della porta seriale; • porta USB (Universal Serial Bus) di recente introduzione, è adatta per connettere al computer qualunque tipo di dispositivo (purché compatibile col collegamento USB!). La tecnologia USB consente di creare “catene” di dispositivi collegati tutti su un’unica porta (fino a 127), inoltre consente il collegamento “a caldo” (cioè a computer acceso), mentre tutti i dispositivi non USB devono sempre essere collegati a computer spento. Figura 1.27 Porte input/output Le schede di espansione che vengono montate sulla scheda madre rendono poi disponibili molte altre porte, fra cui le principali sono: • porta video (talvolta integrata direttamente sulla scheda madre, soprattutto nei modelli di marca) per connettere il monitor al computer; • porta di rete per collegare la macchina direttamente a una rete di computer, senza usare il modem. Ne esistono di vari tipi, ma ormai la presa RJ45 ha di fatto rimpiazzato tutte le altre; • porta SCSI per dispositivi che richiedono un flusso di dati molto veloce (scanner, masterizzatore esterno ecc.). La tecnologia SCSI consente inoltre, come la USB, il collegamento di dispositivi a catena (fino a 7), ma non il collegamento a caldo. La tabella 1.4 riporta le velocità di trasferimento dati per le diverse tipologie di porte. 27 C A P I TO L O 01 Tabella 1.4 Velocità di trasferimento dati per i diversi tipi di porte. NOME PORTA VELOCITÀ Seriale 14,3 KB/s Parallela 115 KB/s USB 1,43 MB/s ECP/EPP 3 MB/s IDE da 3,3 a 16,7 MB/s SCSI-1 5 MB/s SCSI-2 10 MB/s Fast Wide SCSI 20 MB/s Ultra SCSI 20 MB/s Ultra ATA/33 33 MB/s Ultra ATA/66 66 MB/s Wide Ultra SCSI 40 MB/s Ultra 2 SCSI 40 MB/s IEEE-1394 da 12,5 a 50 MB/s USB 2.0 60 MB/s Wide Ultra 2 SCSI 80 MB/s Ultra 3 SCSI 80 MB/s Ultra ATA/100 100 MB/s Wide Ultra 3 SCSI 160 MB/s Un discorso a parte merita la FireWire che sarà trattata nel paragrafo relativo alle schede di acquisizione. Le memorie di massa Vengono detti memorie di massa tutti i supporti (dischi e nastri) su cui vengono registrati dati, documenti e programmi che si vogliono conservare, sono quindi memorie di massa i floppy, i CD, gli hard disk, gli zip ecc. I supporti per le memorie di massa si dividono in quattro grandi categorie. Alla prima categoria appartengono i dischi magnetici: sui quali la memorizzazione dei dati avviene magnetizzando la superficie, tramite un’apposita testina di lettura/ scrittura. Sullo stesso disco i dati possono essere scritti, cancellati e riscritti per un numero indefinito di volte senza logorare il supporto. I dischi magnetici sono volatili per natura, un forte campo magnetico è sufficiente a cancellarne l’intero contenuto 28 Hardware e software in pochi istanti, per questo motivo vanno tenuti distanti dalle fonti di campo, come trasformatori di potenza o grosse calamite. Dei dischi magnetici fanno parte floppy, hard disk e zip. Alla seconda categoria appartengono i dischi ottici; essi sono dischi su cui la memorizzazione dei dati avviene “bruciando” con un laser la superficie, che da lucida diviene così opaca. Normalmente i dati scritti su un disco ottico non possono più essere cancellati, esistono tuttavia dei dischi particolari (CD riscrivibili) che consentono la cancellazione e la riscrittura per un numero comunque limitato di volte (a ogni cancellazione la superficie tende a deteriorarsi sempre di più finché non diventa inutilizzabile). Fanno parte dei dischi ottici i CD-Rom, i Mini CD, i DVD. La terza categoria comprende i dischi magneto-ottici che sono dischi a supporto magnetico, su cui però la scrittura dei dati può avvenire solo dopo un forte riscaldamento della superficie con un fascio laser. A temperatura ambiente i dischi magneto-ottici non sono sensibili ai campi magnetici e questo li mette al riparo dalle cancellazioni accidentali. I dischi magneto-ottici esistono in numerosi modelli, con capacità che arriva fino ad alcuni GByte, e richiedono la presenza di un apposito drive. Furono messi in commercio nella seconda metà degli anni ’80, prima dell’avvento dei CD-Rom, ma non hanno mai preso campo, sia per il costo eccessivo (soprattutto del drive), sia per la contemporanea affermazione degli hard disk e dei CD. Rimangono in uso solo in alcuni sistemi dove è richiesto il frequente salvataggio di una grande quantità di dati in condizioni di sicurezza (per esempio nelle banche). Fanno parte di questa categoria i MOD (Magneto Optical Disk). I nastri magnetici sono l’ultima tipo di memoria di massa. Vengono usati dagli amministratori di grandi sistemi di computer per creare periodicamente copie (backup) del contenuto degli hard disk, in modo da salvare i dati qualora se ne guastasse uno. La lettura/scrittura è però molto lenta (può richiedere alcune ore), per questo l’operazione di backup viene lanciata tipicamente durante la notte. Fanno parte di questa categoria i DAT (Digital Audio Tape). Il software Il sistema operativo Si intende per sistema operativo (o software di sistema) un gruppo di programmi che gestisce il funzionamento di base del computer. Il sistema operativo rimane sempre attivo dal momento in cui viene caricato (all’accensione della macchina) fino allo spegnimento. Sono gestite dal sistema operativo tutte le funzioni generali della macchina, come l’aspetto grafico delle visualizzazioni su monitor, la scrittura e la lettura dai dischi, la messa in esecuzione e la chiusura dei vari programmi, la ricezione e trasmissione di dati attraverso tutti i dispositivi di I/O. Non fanno invece parte del sistema operativo i vari programmi come per esempio i programmi di scrittura, di ritocco fotografico, gli antivirus ecc. che vengono acquistati a parte e installati sulla macchina dopo che questa contiene già il sistema operativo. 29 C A P I TO L O 01 In definitiva si può dire che il software di sistema serve alla macchina per funzionare, mentre il software applicativo serve all’utente per lavorare. Il sistema operativo risiede sull’hard disk come tutti gli altri programmi e viene caricato nella memoria RAM all’accensione della macchina. Esistono molti sistemi operativi: i più diffusi oggi sono i vari Windows di Microsoft (98, Me, NT, 2000), MacOS di Apple per i computer Macintosh, Linux e Unix. Molto diffuso fino ad alcuni anni fa era anche l’MS-DOS, oggi soppiantato da Windows. MS-DOS, Linux e Unix sono sistemi operativi cosiddetti a linea di comando: sullo schermo (di un colore scuro uniforme) non compare nessuna grafica e tutti i comandi devono essere digitati da tastiera. Tali sistemi operativi sono estremamente scomodi e difficili da usare, per cui sono stati creati programmi che, appoggiandosi comunque alle funzioni del sistema a linea di comando, forniscono all’utente un’interfaccia grafica a finestre. Per esempio le versioni di Windows 1, 2 e 3 e 95, precedenti a Windows 98, non erano sistemi operativi, ma solo programmi applicativi che si appoggiavano sull’MS-DOS. Allo stesso modo, esistono vari tipi di interfacce grafiche per Linux e Unix. Windows 98 (e successivi) e MacOS sono invece sistemi operativi a interfaccia grafica (Graphical User Interface, GUI): tutte le operazioni si svolgono tramite icone e finestre, usando intensivamente il mouse per lanciare comandi, scegliere opzioni ecc. Il software applicativo Vengono detti software applicativi (o semplicemente “applicativi”) l’insieme dei programmi che non sono compresi nel sistema operativo, ma che vengono invece installati dall’utente per svolgere compiti specifici. Sono degli applicativi i programmi antivirus (Norton, McAffee, InoculateIt, F-Prot...), i programmi per la compressione dei file (Winzip, ZipCentral...), la posta elettronica (Eudora, Outlook Express...), il ritocco fotografico (Photoshop, PaintShop Pro...), la composizione multimediale (Dreamweaver, FrontPage, Flash, Director...), i lettori audio/video (QuickTime Player, Real Player...) ecc. I driver Nel gergo informatico si tende spesso a fare confusione fra drive e driver, termini che si riferiscono in realtà a due cose molto diverse. I drive (hardware) sono i lettori in cui si inseriscono i vari dischi del computer (floppy, CD, zip...); i driver (software) sono invece dei file accessori al sistema operativo che consentono la comunicazione fra il computer e le varie periferiche, servono cioè da “interpreti” fra l’hardware e il sistema operativo. Per poter funzionare correttamente, ogni dispositivo deve avere il suo particolare driver registrato dal sistema operativo. Esistono perciò i driver di stampante, modem, masterizzatore, lettore CD, scheda madre, scheda video, scheda audio, scheda di rete ecc. Talvolta hanno i loro driver anche il mouse e il monitor, mentre non li hanno mai la RAM, la tastiera, le casse audio e il drive del floppy. Le librerie grafiche Le API (Application User Interface) sono un’insieme integrato di interfacce di programmazione sviluppate per aiutare lo sviluppo di applicazioni multimediali. Queste inter- 30 Hardware e software facce si basano sul concetto di periferica virtuale, che permette una più facile programmazione delle periferiche rendendo però impossibile l’accesso diretto all’hardware. Le librerie grafiche sono le API dedicate alla grafica e fungono da interfaccia tra l’hardware grafico e i software. Le librerie grafiche più conosciute sono le Open GL (sviluppate dalla SGI) e le Direct 3D (sviluppate di Microsoft). Le librerie grafiche mettono a disposizione del sistema operativo una serie di funzionalità che definiscono il processo di visualizzazione chiamato pipeline grafica. La telecamera La telecamera (figura 1.28) è l’apparecchiatura che provvede a effettuare le riprese e a tradurre le immagini raccolte nei corrispondenti segnali elettrici. È costituita da quattro parti: il corpo camera, l’obiettivo, il mirino e il supporto. Figura 1.28 Una videocamera Il corpo camera Il corpo camera è la parte che propriamente genera il segnale elettrico in funzione dell’immagine ricevuta dall’obiettivo. Il corpo di una videocamera (in bianco e nero) è costituito da due principali unità: il sensore d’immagine e la parte circuitale (figura 1.29). Figura 1.29 Il corpo macchina 31 C A P I TO L O 01 I sensori di immagine Il sensore d’immagine è il trasduttore opto-elettrico che provvede a convertire l’informazione luminosa in informazione elettrica (figura 1.30). Il segnale prodotto, non ancora adatto alla riproduzione, verrà poi elaborato dalla parte circuitale. Figura 1.30 Due tipi di sensori d’immagine Il tubo da ripresa Dispositivo costituito da un tubo a vuoto di forma cilindrica contenente da una parte una sorgente di elettroni e terminante sulla parte opposta con una superficie fotoconduttiva (figura 1.31). Per fotoconduttività si intende la proprietà per cui una sostanza è in grado di condurre corrente solo se colpita da radiazione luminosa. Figura 1.31 La struttura di un tubo da ripresa Il sensore allo stato solido (CCD) Questo dispositivo è un componente optoelettronico integrato di piccole dimensioni, in cui gli elettroni sono generati e spostati all’interno della sua struttura (stato solido) senza dover ricorrere al complesso supporto del tubo a vuoto. La composizione del CCD prevede tre elementi paralleli (figura 1.32): uno strato fotoconduttivo (che riceve l’immagine dall’obiettivo), una porta di trasferimento e uno strato CCD vero e proprio. 32 Hardware e software Figura 1.32 Lo schema di un CCD Lo strato fotoconduttivo è ripartito in tante cellette, ciascuna capace di generare un elemento d’immagine o “pixel”. Una volta raggiunto dalla luce, questo strato rende liberi, all’interno di ciascuna celletta, alcuni elettroni, in numero proporzionale all’intensità luminosa dei vari raggi incidenti. Ogni cella si troverà pertanto caricata con una quantità di elettroni variabile, a seconda delle diverse sfumature dell’immagine. La porta di trasferimento svolge la funzione di otturatore elettronico: essa cioè è normalmente chiusa e si apre solo in corrispondenza dei tempi di ritorno della scansione, trasferendo gli elettroni liberati nelle cellette, dallo strato fotoconduttore al CCD. Lo strato CCD infine, ripartito anch’esso in cellette corrispondenti a quelle del fotoconduttore, ricevuti gli elettroni li scarica di cella in cella verso una porta di uscita laterale, generando il segnale video. La parte circuitale Questa parte rappresenta, dopo i sensori di ripresa, il secondo blocco funzionale del corpo camera. Può essere a sua volta ripartita in due unità con compiti diversi: l’unità di servizio e l’unità di controllo (figura 1.33). Figura 1.33 La parte circuitale 33 C A P I TO L O 01 L’unità di servizio e di controllo L’unità di servizio provvede al corretto funzionamento del sensore e all’amplificazione del segnale da esso uscente. L’unità di controllo, che rappresenta la parte “intelligente” del corpo camera, provvede al pilotaggio dell’unità di servizio e alla generazione dei sincronismi di riga e di quadro per la costruzione del segnale video completo. È questo il segnale che viene inviato al monitor per la riproduzione delle immagini. La centralizzazione dei sincronismi La sincronizzazione dei sincronismi è indispensabile, affinché il passaggio d’inquadratura da una camera all’altra, pilotato dalla consolle, avvenga senza introdurre discontinuità nella scansione delle immagini. Un dispositivo di sincronizzazione, a volte già integrato nelle videocamere, è il GenLock (Generator Lock, generatore d’aggancio). Il Gen-Lock La sincronizzazione di due telecamere tramite Gen-Lock prevede quindi l’invio dalla camera 1 del segnale video completo al Gen-Lock e l’inoltro dei sincronismi dal GenLock alla camera 2. La camera 2, in questo modo, si sincronizza sulla 1 ed entrambi i segnali potranno essere inviati alla consolle di regia. Figura 1.34 Il collegamento del Gen-Lock La telecamera a colori Il trattamento del colore prevede nella telecamera a colori, la scomposizione dell’informazione luminosa nei tre colori fondamentali (RGB) e la codifica dei relativi segnali. Operazioni inverse avvengono nel monitor. 34 Hardware e software La telecamera a colori prevede quindi un sistema ottico separatore o discriminatore, tre sensori di ripresa, l’unità di trattamento del colore e, come per la camera b/n, l’unità di servizio e quella di controllo (figura 1.35). L’unità di trattamento del colore, ricevuti i segnali RGB, provvede alla costruzione della luminanza e della crominanza e alla loro combinazione, generando il segnale video a colori completo o composito. Il discriminatore provvede a effettuare la separazione dei tre colori presenti nell’immagine. È costituito da due specchi “dicroici”, capaci cioè di riflettere la radiazione di un solo colore lasciando passare le altre, e da due specchi comuni. Figura 1.35 Schema di una videocamera a colori Le telecamere a colori con sensori CCD presentano spesso un discriminatore realizzato con un apposito gruppo di filtri e prismi. Camera monosensore. Questo tipo di camera dispone di un solo sensore capace di fornire le tre informazioni RGB. NOTA Tecnologia: analisi cromatica per via ottica (discriminatore con due filtri dicroici sovrapposti) o per via elettronica (superficie sensibile ripartita in terne di striscioline intercalate, ciascuna sensibile a uno dei tre colori RGB). Il formato DV e miniDV Il formato DV è stato creato per semplificare e unificare il processo di ripresa/acquisizione/editing/riversamento, oltre che per aumentare la qualità del video rispetto ai sistemi consumer precedenti. Parleremo di formato DV riferendoci in realtà al miniDV, utilizzato dalla maggior parte delle videocamere consumer, tralasciando i formati professionali (DVCPRO, 35 C A P I TO L O 01 DVCAM ecc.). La qualità della resa può variare da formato a formato ma la struttura è la stessa per ognuno di essi. Il DV è un formato digitale nativo; ciò vuol dire che, se non interveniamo per modificarlo, nasce digitale già dal momento in cui si effettua la ripresa e rimane tale sino al momento di riversare il filmato su PC. In effetti, quando lavoriamo con una videocamera analogica, nel momento in cui importiamo una sequenza con una scheda di acquisizione (M-Jpeg, mpeg1/2 ecc.), non facciamo altro che trasformare un segnale analogico (che esce dalla videocamera VHS, Video8 ecc.) in un segnale digitale. Con il formato DV questo non avviene più, poiché già nel momento della ripresa, sul nastro DV viene registrata una sorta di clip digitale, una sequenza di bit che dobbiamo soltanto trasferire (in pratica copiare come se si trattasse di un normalissimo file) su computer senza nessuna compressione aggiuntiva e, al limite, con l’aggiunta di un header (intestazione) che permette al PC di riconoscere il file come multimediale. Un file DV potrebbe presentarsi nel formato AVI o QuickTime, ma ci si deve ricordare che rimane un DV, con una sua struttura e una sua compressione d’immagine. Un problema da non sottovalutare quando si lavora con file DV è l’enorme quantità di dati che il sistema deve contenere. Un file DV ha un data rate di 25 Mbits ed è quindi molto esigente in fatto di spazio su hard disk. Considera che cinque minuti di video in formato miniDV occupano più di 1 GB di memoria. Inoltre, visto il flusso da gestire, si deve ricorrere a un protocollo di trasmissione dati particolare: il FireWire, ormai entrato nell’utilizzo comune. Col DV si può ormai lavorare senza supporto hardware, se non quello fornito dal processore del PC. Oggi infatti anche i PC di fascia bassa sono in grado di gestire flussi di dati così elevati e non sono più necessarie schede dedicate a trattare il DV. Comunque occorre tener presente che nel momento in cui si fa editing e si aggiungono effetti, tendine e altri (operazioni queste che richiedono calcoli molto complessi), un supporto hardware aggiuntivo (le così dette schede realtime) può sempre tornare utile. Esaminiamo pertanto le due tipologie di lavoro con il miniDV. • Codec hardware: inizialmente le prime schede di acquisizione di tipo FireWire erano dotate di un chip di decodifica DV integrato nella scheda stessa. Con questo tipo di schede il video viene codificato via hardware senza appesantire il lavoro della CPU del PC. Praticamente si comportano esattamente come il chip M-Jpeg delle schede di cattura video, tranne per il fatto che non devono digitalizzare le immagini ma solo riprodurle ed elaborarle in fase di editing. La cattura effettuata con questa modalità è detta “in real time” proprio perché vi è la possibilità di visionare i risultati senza la necessità di effettuare un rendering. Il rovescio della medaglia di queste schede è l’alto costo dovuto sia al costoso software di editing, spesso adattato alla scheda, sia all’hardware stesso. • Codec software: il codec software è una scorciatoia ormai ampiamente utilizzata da chi possiede un PC sufficientemente potente, in grado quindi di lavorare in realtime senza hardware aggiuntivo. Di norma visionare un file DV è possibile senza supporto hardware ma al momento del rendering o del preview (quindi se si vuole fare editing con effetti, tendine e filtri) si ha bisogno di un software o plug-in 36 Hardware e software (spesso associati ai software di editing) che corrono in aiuto alla riproduzione/elaborazione. Nella stragrande maggioranza dei casi il codec software DV che viene fornito con il pacchetto, può essere ottimizzato facilitando così il lavoro di editing. Se quindi si è in possesso di un codec software sarà sufficiente acquistare una scheda FireWire per la cattura del video sorgente. La scheda di acquisizione Facciamo ora una breve panoramica dei dispositivi hardware con cui si avrà a che fare lavorando col digital video, cercando di sottolineare l’importanza che tali schede rivestono e i parametri sui quali basarsi per acquistare la scheda giusta. Le schede di acquisizione si possono davvero definire il cuore di un progetto di editing video. Infatti il loro compito è quello di trasferire nel modo più adatto e performante, i fotogrammi di un video registrati precedentemente con una videocamera (o con un VCR) sul PC, in modo tale da poterli rivedere, elaborare e in generale cambiare. Più precisamente esse si adoperano a catturare il segnale analogico (o digitale) uscente da una qualsiasi sorgente audio/video (VCR, telecamera, televisione ecc.) e a salvarlo in un file video riconoscibile e utilizzabile dal PC, preservando naturalmente tutte le caratteristiche che vanno oltre la mera immagine video (le tracce audio, il sincronismo, la fedeltà dei colori, la velocità di riproduzione, il formato televisivo ecc.). Allo stesso modo questi dispositivi permettono, nella maggior parte dei casi, il processo contrario ovvero il riversamento su nastro nei vari formati. I dispositivi di cattura possono essere interni (schede da installare all’interno dei PC) o esterni (generalmente tramite interfaccia USB) oppure possono essere già integrati nella scheda video in dotazione al sistema. Ognuna di queste tipologie ha svantaggi e vantaggi ma, di norma, i procedimenti a cui sono predisposte non differiscono. Se ci accingiamo a eseguire un progetto di montaggio video, la scelta dell’hardware è certamente un parametro fondamentale; dobbiamo infatti capire di quale tipo di dispositivo necessitiamo, a seconda del nostro scopo. Ecco un elenco delle tipologie esistenti, con una breve descrizione. Schede di cattura senza codec hardware Si tratta della prima tipologia di schede di acquisizione comparsa sul mercato consumer. Tanto in voga qualche anno fa, ora tornano sul mercato grazie alla potenza dei nuovi PC. In sostanza si tratta di dispositivi che montano un convertitore analogico/digitale grazie al quale l’entrata video analogica viene trasformata in dati digitali e salvata su hard disk. Tutto questo viene eseguito senza un codec hardware e quindi poggiando solo sulla capacità di elaborazione della CPU del sistema. Per questo motivo sono ricomparse sul mercato solo ultimamente, in seguito al crescere delle performance dei processori centrali e hanno sottratto il predominio di quelle con codec hardware, più performanti ma meno economiche. Di norma la cattura del video avveniva utilizzando codec software standard poco qualitativi, come il Microsoft Video 1, o i codec proprietari forniti assieme al dispositivo. 37 C A P I TO L O 01 Spesso è consigliata la cattura in formato non compresso, più ingombrante ma più versatile per compressioni successive. Queste schede sono strettamente legate all’hardware del sistema (processore, HD, RAM ecc.) su cui vengono montate ed è vivamente consigliata una prova prima dell’acquisto. Per uso prosumer si consiglia una scheda con codec hardware o il passaggio a un sistema DV. Schede di cattura con codec hardware Sono l’evoluzione di quelle senza codec hardware e avendo la particolarità di possedere al loro interno un chip capace di assistere la CPU centrale nelle operazioni di compressione e decompressione delle immagini video, tanto da rendere molto performante la fase di cattura e di editing. Queste schede sono in sostanza il risultato dell’unione delle schede di acquisizione classiche con quelle strettamente dedicate all’editing. Per chi non può o non vuole passare a un sistema DV sono consigliate per uso consumer e prosumer (qualità sino S-VHS ma compressioni anche più alte, fino al DV). In pratica l’unico codec supportato da tali schede è l’M-Jpeg (Motion Jpeg) che, sebbene in via di dismissione a causa del DV, è certamente ancora la scelta migliore per lavorare con ingressi analogici. Nella figura 1.36 un esempio di questa tipologia hardware in cui tutto si fa passando attraverso il chip M-Jpeg montato sulla scheda. Figura 1.36 Tipologia con il chip M-Jpeg montato sulla scheda Si deve sottolineare comunque che la necessità del chip hardware sulle schede di acquisizione/editing, sta velocemente diminuendo. È ormai possibile, grazie a codec software e le potenti CPU moderne, emulare la presenza di questi chip su un sistema che ne è privo, riuscendo a riprodurre o editare filmati con essi compressi. Per questo motivo (oltre alla indiscutibile qualità del DV) le schede di questo tipo stanno inesorabilmente scomparendo. 38 Hardware e software Schede e dispositivi di editing Tipo di scheda ormai obsoleta e praticamente scomparsa nelle versioni consumer. Di solito erano intese come aggiunta (daughter board, scheda figlia) ai dispositivi di acquisizione senza codec proprio come supporto hardware alla cattura e all’editing (ricordiamo la “M-Jpeg Option” che veniva connessa alla gloriosa Movie Machine). Grazie alla presenza del chip sulla scheda e ai circuiti stampati sempre più piccoli, oggi questo modo di intendere l’editing ha lasciato il posto a sistemi più integrati e quindi più economici. Dispositivi di acquisizione e cattura DV – schede FireWire Le schede FireWire sono dei dispositivi aggiuntivi che permettono l’interfacciarsi del PC con una periferica che sfrutta tale protocollo. Il loro utilizzo principale, ma non l’unico, è quello del trasferimento di dati video digitali da videocamere DV per l’editing non lineare effettuato tramite PC. Queste schede infatti hanno il vantaggio, rispetto a quelle di acquisizione analogica, di riversare i dati contenuti nella cassetta DV come se si trattasse di un semplice file senza quindi perdita di informazioni. Il risultato è la perfetta qualità originale del file video su PC. Possiamo avere due tipi di schede FireWire: quelle dotate di codec hardware, cioè del chip analogo a quello montato sulla vostra videocamera DV, e quelle che si avvalgono di un codec software che poggia sul chip del vostro computer e su quello della videocamera. Cenni sul FireWire Il FireWire sviluppato da Apple (noto anche come IEEE 1394 Serial Bus o i.Link) è un protocollo di trasmissione dati di nuova generazione, che offre grande velocità di trasferimento a un costo accessibile. Inizialmente concepito per sostituire in maniera più economica gli standard di bus parallelo seriale e SCSI e permettere la realizzazione di una vera e propria rete di dispositivi, è oggi utilizzato più di frequente, anche se si discosta dalla pura informatica, come complemento al video DV, del quale è uno standard accettato di trasferimento digitale. Come lo SCSI, supporta l’inserimento di dispositivi in cascata (fino a 16) e la gestione fino a 63 periferiche sullo stesso bus. Con un cavo FireWire è possibile inoltre un attacco “a caldo”; questo vuol dire che possiamo tranquillamente inserire o disinserire la periferica a computer acceso senza creare problemi al sistema. Le velocità di trasmissione del protocollo IEEE 1394 consente un Bit-rate (la quantità di informazione (bit) necessaria per rappresentare un certo dato digitale; nel desktop video indica spesso la velocità con la quale il video o l’audio vengono trasmessi o riprodotti) di 100, 200 e 400 Mbps. Grandi velocità che si traducono in grandi prestazioni, ottime quindi per la gestione dei flussi video. Le periferiche sono direttamente alimentate dal BUS e quindi non c’è più bisogno di alimentatori accatastati sulla scrivania. Riassumendo: una porta FireWire non solo ci consente di collegare fisicamente una videocamera digitale a un PC e di trasferire i dati DV, senza compressioni o perdita di frame, come se la cassetta fosse un HD di backup; quindi e in effetti più che di 39 C A P I TO L O 01 acquisizione video, sarebbe più corretto parlare di trasferimento video, ma una volta terminato il montaggio del filmato, per le videocamere che lo consentono, ci offre la possibilità di trasferire tutto sul nastro DV tramite l’ingresso digitale della videocamera, con un procedimento opposto a quello precedente. Tuner TV e decoder TV Più che schede di acquisizione, i Tuner TV sono dispositivi che permettono di trasformare il segnale analogico dell’antenna televisiva in un segnale digitale visualizzabile sul monitor. Contengono infatti un sintonizzatore TV che permette di ricercare canali e memorizzarli. Con queste schede è sempre possibile catturare in diretta singoli fotogrammi da VCR, telecamere o TV e salvarli come immagini. Invece, per quanto riguarda l’acquisizione video, spesso viene confuso il concetto di editing con quello di semplice cattura di “sequenze digitali”. In sostanza, raramente questi dispositivi possono effettuare l’acquisizione di sequenze video qualitative, non essendo dotati di una compressione hardware e possedendo, per questioni di costo, convertitori analogico/digitali non performanti. Nonostante questo limite, d’altra parte, di solito è possibile salvare sequenze compresse da codec software, spaziando tra i 12-15 fps e con riquadri video dimezzati; naturalmente, anche in questo caso, l’hardware del sistema può favorire migliori risultati. Schede multimediali di editing miste È un dispositivo che miscela le caratteristiche delle schede precedentemente descritte. Spesso è una soluzione integrata detta All in One (tutto in uno) ma si deve stare attenti alle performance non sempre professionali dato il target normalmente casalingo. Classico l’abbinamento “TV+acquisizione” ma con risultati pessimi se si vuole fare qualcosa di serio. E non si deve cedere alle tentazioni riportate sulle confezioni. È sempre necessario guardare le specifiche reali della scheda e chiedere COSA effettivamente si può fare con quel prodotto. Schede di decodifica MPEG In passato sono state la gioia degli appassionati cinefili che potevano, con una spesa contenuta, riprodurre i VideoCD sul proprio Desktop con una buona qualità nel formato MPEG-1 (!). Queste schede, infatti, contenevano dei chip che permettevano di svolgere le dure (ai tempi!) operazioni di decodifica dell’algoritmo di compressione MPEG-1 sollevando la CPU dall’onere di processare questo flusso di dati. Questo ora ci può far sorridere: non c’è CPU o scheda video in commercio che non decomprima istantaneamente l’MPEG-1 (e MPEG-2) e la qualità del VideoCD impallidisce a confronto di quella del più moderno DVD. Dovere di cronaca. In seguito sono comparse sul mercato schede di decodifica MPEG2, abbinate talvolta a lettori CD-Rom/DVD. Anche queste sono state sostituite o integrate egregiamente con le moderne schede video che (grazie all’aumento di produzione di videogiochi sempre più esigenti) si sono dotate di chip grafici dall’enorme potenza, in grado quindi di decomprimere l’MPEG-2. 40 Hardware e software VGA to PAL e Genlock Vengono chiamati anche “VGA2PAL” o “Genlock” e sono apparecchi che permettono di visualizzare su un televisore ciò che compare sul monitor di un computer. In particolare trasformano il segnale VGA, che esce dalla scheda video verso il monitor, in un segnale PAL, interpretabile dal televisore. Solitamente su TV si raggiungono risoluzioni massime di 800×600, sufficienti a ottenere un discreto risultato. L’utilizzo di queste periferiche è subito intuibile. Si può lavorare con output molto più grandi del monitor, televisori ma anche proiettori da presentazione benché oramai siano in commercio proiettori capaci di interpretare direttamente il segnale VGA. Da un punto di vista strettamente ludico, questi apparecchi sono certamente graditi agli appassionati di videogame, che finalmente hanno una più ampia visione di gioco. Proprio per favorire questa fetta (non così piccola) di utenza, oramai quasi tutte le schede grafiche in commercio sono già fornite di un output TV, che può tornare utile anche per progetti di desktop video. Schede e dispositivi Real Time Destinati ad amatori evoluti o professionisti, sono l’evoluzione dei dispositivi di acquisizione DV. Mantengono le stesse caratteristiche ma con in più funzioni di real time. Cosa significa? I sistemi tradizionali richiedono dei tempi più o meno lunghi per elaborare una tendina, un titolo e qualsiasi altro effetto che si differenzi dal filmato originale salvato su HD. Questi tempi sono molto variabili in funzione della durata dell’effetto e della potenza del PC in quanto avviene un’elaborazione per generare i fotogrammi i quali vengono poi salvati su HD. I dispositivi real time annullano questi tempi di attesa. Le dissolvenze fra due clip, i titoli in sovraimpressione, cromakey, filtri e molti altri effetti vengono generati in tempo reale. Ogni scheda mette a disposizione una serie più o meno limitata di effetti in real time, pertanto in fase di acquisto è consigliabile analizzare i vari pacchetti di filtri/transizioni che offrono i vari sistemi. Altro particolare importante è la tecnologia utilizzata da questi sistemi. I sistemi migliori utilizzano la tecnologia scalare, in sostanza gli effetti real time sono gestiti direttamente dal PC. Ciò significa che maggiore è la potenza del PC, maggiori saranno le prestazioni della scheda. La compressione dei dati La compressione dati è un’operazione mediante la quale lo spazio necessario a contenere una determinata informazione viene a essere ridotto mediante il ricorso a tecniche software oppure hardware. Essa si basa sul concetto di sostituire un’informazione con un’altra che la possa rappresentare necessitando di uno spazio minore. In termini informatici l’oggetto è un file o un insieme di file, e cioè un insieme di bit. Da ciò consegue che comprimere un oggetto simile – costituito unicamente da una 41 C A P I TO L O 01 quantità finita di 1 e di 0 – non può significare altro che diminuire il numero di 1 e di 0, ovvero di bit, che lo compongono. Tale operazione è sostanzialmente differente dai tipi di compressione che possiamo osservare nel mondo fisico, per esempio dalla compressione che una pressa effettua sulla carcassa di un’automobile. In questo caso, infatti, la quantità di materia di cui è costituita l’automobile non diminuisce a causa dell’azione della pressa: finisce semplicemente per occupare meno spazio, diventando allo stesso tempo più densa. Potremmo dire, semplificando, che il numero di particelle di cui è costituita l’auto rimane invariato, mentre varia – diminuendo in modo inversamente proporzionale alla pressione applicata – lo spazio che le separa. I bit che costituiscono un file, invece, non si avvicinano tra loro in seguito alla compressione, diminuiscono piuttosto di numero. È chiaro quindi che la compressione, in ambito informatico, è tutt’altra cosa rispetto al concetto intuitivo di compressione a cui siamo abituati, legato all’applicazione di una o più forze tendenti a ridurre lo spazio occupato da un oggetto. Reversibilità e ibernazione Pensiamo ora a un tipico file grafico, per esempio una fotografia a colori salvata in modalità RGB. Senza addentrarci in discorsi complessi sulla codifica del colore, diremo che questa modalità richiede l’uso di tre byte per memorizzare le informazioni di colore e luminosità relative a ciascun punto – o pixel – dell’immagine. Per sapere, quindi, quanto spazio occupa su disco questo file grafico, ci basta moltiplicare per tre il numero complessivo di punti da cui è costituita l’immagine. Questo numero si ottiene, a sua volta, moltiplicando il numero delle colonne per il numero delle righe che compongono il rettangolo occupato dall’immagine. Per esempio, data allora una foto di 1024 pixel orizzontali per 768 verticali, lo spazio che essa occupa come file su disco è di 1024×768×3 = 2.359.296 byte, il che equivale a 2.304 Kilobyte o, ancora, a 2,25 Megabyte. È importante precisare che tale cifra rappresenta lo spazio occupato dal file grafico in forma non compressa. Un qualsiasi programma per la visualizzazione di immagini a monitor avrà bisogno di tutti quei byte per poter generare sullo schermo del computer una foto uguale all’originale memorizzato su disco. E non solo i byte dovranno esserci tutti, ma dovranno anche risultare disposti nella stessa esatta sequenza in cui sono stati la prima volta archiviati. Ma se è compito specifico di un algoritmo di compressione trasformare la sequenza di byte che costituisce un file in una differente sequenza più breve, è evidente che la sequenza di byte che compone un file grafico compresso non sarà utilizzabile per generare l’immagine contenuta nel file originale. Ciò ci porta a definire una caratteristica fondamentale di qualsiasi formato di compressione passibile di applicazioni pratiche: la reversibilità della compressione. In genere, se un programma ha la capacità di salvare un file in un formato compresso, è anche in grado di leggere i file che sono stati compressi con quel particolare formato, ripristinando l’informazione in essi contenuta, cioè decomprimendoli. 42 Hardware e software Fedeltà assoluta e fedeltà relativa In virtù di quanto detto sopra, la principale differenza che possiamo stabilire tra i formati di compressione delle immagini grafiche è data dalla misura della loro reversibilità. Un formato che è in grado di restituire, al termine della decompressione, un’immagine esattamente uguale – pixel per pixel – all’originale com’era prima che venisse compresso, viene normalmente definito con l’impronunciabile termine inglese lossless. Potremmo tradurre questo termine con “senza perdita” oppure con “non distruttivo”. Viceversa, un formato di compressione che non può assicurare una reversibilità assoluta, viene definito in inglese lossy, ovvero, in italiano, “con perdita” o anche “distruttivo”. La cosa che si perde o non si perde è la fedeltà all’originale dell’immagine ripristinata. I grafici e gli impaginatori di professione devono conoscere perfettamente le caratteristiche dei formati di compressione che adoperano, se vogliono ottenere il meglio dalle manipolazioni che effettuano sui file. Sarebbe infatti un grave errore salvare e risalvare un file in un formato lossy come il JPG, per poi utilizzarlo alla fine in un formato “senza perdita” come il TIF. È invece corretto fare il contrario, ovvero salvare quante volte si vuole un lavoro in corso d’opera in un formato non distruttivo, per poi salvarlo solo alla fine, se necessario, in un formato distruttivo. La regola (e la logica) vuole, insomma, che l’archiviazione in un formato lossy sia sempre l’anello conclusivo della catena di trasformazioni a cui è sottoposto un file. L’efficienza del coefficiente A questo punto nasce una domanda scontata: perché mai usare un formato di compressione distruttivo, se esistono sistemi non distruttivi che permettono di comprimere e decomprimere uno stesso file infinite volte, conservando tutte le informazioni in esso contenute? La risposta è che in molti casi la quantità di spazio che una compressione non distruttiva (lossless) riesce a salvare è di molto inferiore al risparmio di spazio ottenibile per mezzo di una compressione distruttiva (lossy). L’efficienza della compressione viene calcolata dividendo la grandezza originale del file per la sua grandezza una volta compresso. In inglese questo valore si chiama compression rate o, alla latina, ratio; in italiano possiamo chiamarlo coefficiente o fattore di compressione. A causa del differente tipo di operazioni svolte sull’immagine, in certi casi è opportuno utilizzare un formato di compressione distruttivo, in altri uno non distruttivo. Tipicamente, le immagini grafiche contenenti disegni a tinte uniformi e contorni netti e ben contrastati – le tavole dei fumetti per esempio – sono le candidate ideali per compressioni del tipo lossless. Al contrario, le foto – soprattutto quelle contenenti un gran numero di colori differenti e transizioni sfumate tra primo piano e sfondo – richiedono compressioni del tipo lossy se si vuole ottenere un risparmio significativo di spazio. Ma vediamo, per mezzo di una tabella riassuntiva (tabella 1.5), i guadagni di spazio che si possono ottenere con ciascuno dei due metodi di compressione dei file grafici. 43 C A P I TO L O 01 Tabella 1.5 Guadagni di spazio con i vari metodi di compressione. Tipi di compressione Coefficienti di compressione ottenibili Non distruttiva (lossless) Immagini naturali (foto digitali, scansioni) 1:1,5-1:2 Immagini artificiali (disegni, fumetti) 1:1,5-1:20 Distruttiva (lossy) 1:1,5-1:30 1:10-1:300 senza una visibile perdita di qualità con perdita di qualità 1:1,5-1:300 Questa tabella ci dice, quindi, che un file grafico di 1024×768 pixel in modalità RGB, che, come abbiamo visto più sopra, occupa in forma non compressa 2.304 KB, può “dimagrire” con una compressione non distruttiva fino a ridursi, nel migliore dei casi, a poco più di 115 KB, cioè un ventesimo della grandezza originaria. Questo, però, se l’immagine rappresentata nel file è un disegno, un fumetto. Nel caso sia invece una foto, il meglio che possiamo sperare dalla compressione non distruttiva è un dimezzamento del peso del file: da 2.304 a 1.150 KB circa. Ben diversi sono i fattori di compressione che possiamo ottenere ricorrendo all’uso di formati distruttivi. Il file contenente la scansione di una foto può per esempio essere ridotto fino a un trentesimo circa della grandezza originaria (cioè meno di 77 KB sui 2.304 KB di partenza del nostro esempio) senza alcuna perdita di qualità apparente. Se, poi, non ci infastidisce un certo progressivo, visibile degrado dell’immagine, possiamo ottenere fattori di compressione addirittura del 300 per cento, che porterebbero il nostro file da 2.304 a poco meno di 8 KB. Evidente, dunque, la necessità di usare per la visualizzazione su Internet, soggetta alla lentezza delle connessioni via modem, i formati distruttivi, grazie alle loro superiori capacità di compressione. Su questo argomento esistono molti algoritmi di compressione, ma nessuno è il migliore in assoluto: spesso i programmi ne implementano più di uno al fine di utilizzare quello che fornisce il miglior rapporto di compressione in relazione al tipo di dato su cui si deve operare. Ogni algoritmo di compressione non è idoneo a lavorare con ogni tipo di dato e perciò un buon compressore dovrebbe essere in grado di scegliere tra più algoritmi per poter stabilire di volta in volta quale sia il più efficiente in relazione alla situazione. Lo stabilire quale sia il migliore comporta un’analisi e un’elaborazione che consiste nel comprimere i file con tutti gli algoritmi disponibili per poter discriminare fra essi quale sia il più idoneo. Ne consegue che, all’aumentare delle prestazioni di compressione, vi è un aumento dei tempi di calcolo, sia durante la compressione sia durante la decompressione. L’algoritmo RLE (Run Lenght Encoding) Proviamo ora a vedere come funziona un sistema di compressione non distruttivo, tuttora diffuso, noto con la sigla RLE, acronimo di Run Lenght Encoding, che potremmo rendere in italiano con codifica della lunghezza di stringa. In questo tipo di compres- 44 Hardware e software sione, ogni serie ripetuta di caratteri (o run, in inglese) viene codificata usando solo due byte: il primo è utilizzato come contatore, e serve per memorizzare quanto è lunga la stringa; il secondo contiene invece l’elemento ripetitivo che costituisce la stringa. Immaginate ora di comprimere in questo formato un file grafico contenente un grande sfondo di un solo colore uniforme. Tutte le volte che l’analisi sequenziale del file s’imbatterà in stringhe di caratteri uguali, e ciò accadrà spesso nella scansione dello sfondo omogeneo, le serie ripetitive potranno essere ridotte a due caratteri soltanto: uno che esprime il numero delle ripetizioni, il secondo il valore che si ripete. E il risparmio di spazio sarà direttamente proporzionale al livello di uniformità presente nell’immagine. Provate ora, invece, a usare il sistema RLE su una foto piena di colori differenti e di transizioni sfumate: il risparmio di spazio sarà molto minore, perché poche saranno le stringhe di ripetizioni che l’algoritmo riuscirà a trovare leggendo sequenzialmente il file. Pensate, infine, al caso limite di un’immagine creata artificialmente, come quella riportata qui sotto (figura 1.37), contenente una serie di pixel tutti differenti l’uno dall’altro nei valori cromatici. In questo caso, l’uso della compressione RLE si dimostra addirittura controproducente. Figura 1.37 Immagine ingrandita di un file di 16×16 pixel, costituito da 256 colori unici differenti Questo file, salvato in formato BMP non compresso, occupa 822 byte. Salvato invece sempre in formato BMP, ma utilizzando l’algoritmo RLE, occupa 1400 byte, cioè 1,7 volte la sua grandezza originale. L’algoritmo Huffman Questo algoritmo non distruttivo fu inventato nel 1952 dal matematico D.A. Huffman ed è un metodo di compressione particolarmente ingegnoso. Funziona in questo modo: analizza il numero di ricorrenze di ciascun elemento costitutivo del file da comprimere, cioè i singoli caratteri in un file di testo, i pixel in un file grafico. Accomuna i due elementi meno frequenti trovati nel file in una categoria-somma che li rappresenta entrambi. Così per esempio se A ricorre 8 volte e B 7 volte, viene creata la categoria-somma AB, dotata di 15 ricorrenze. Intanto i componenti A e B ricevono ciascuno un differente marcatore che li identifica come elementi entrati in un’associazione. L’algoritmo identifica i due successivi elementi meno frequenti nel file e li riunisce in una nuova categoria-somma, usando lo stesso procedimento descritto al punto 2. 45 C A P I TO L O 01 Il gruppo AB può a sua volta entrare in nuove associazioni e costituire, per esempio, la categoria CAB. Quando ciò accade, la A e la B ricevono un nuovo identificatore di associazione che finisce con l’allungare il codice che identificherà univocamente ciascuna delle due lettere nel file compresso che verrà generato. Si crea per passaggi successivi un albero costituito da una serie di ramificazioni binarie, all’interno del quale appaiono con maggiore frequenza e in combinazioni successive gli elementi più rari all’interno del file, mentre appaiono più raramente gli elementi più frequenti. In base al meccanismo descritto, ciò fa sì che gli elementi rari all’interno del file non compresso siano associati a un codice identificativo lungo, che si accresce di un elemento a ogni nuova associazione. Gli elementi invece che si ripetono più spesso nel file originale sono anche i meno presenti nell’albero delle associazioni, sicché il loro codice identificativo sarà il più breve possibile. Viene generato il file compresso, sostituendo a ciascun elemento del file originale il relativo codice prodotto al termine della catena di associazioni basata sulla frequenza di quell’elemento nel documento di partenza. Il guadagno di spazio al termine della compressione è dovuto al fatto che gli elementi che si ripetono frequentemente sono identificati da un codice breve, che occupa meno spazio di quanto ne occuperebbe la loro codifica normale. Viceversa gli elementi rari nel file originale ricevono nel file compresso una codifica lunga, che può richiedere, per ciascuno di essi, uno spazio anche notevolmente maggiore di quello occupato nel file non compresso. Dalla somma algebrica dello spazio guadagnato con la codifica breve degli elementi più frequenti e dello spazio perduto con la codifica lunga degli elementi più rari si ottiene il coefficiente di compressione prodotto dall’algoritmo Huffman. Da quanto detto si deduce che questo tipo di compressione è tanto più efficace quanto più ampie sono le differenze di frequenza degli elementi che costituiscono il file originale, mentre scarsi sono i risultati che si ottengono quando la distribuzione degli elementi è uniforme. Nelle due immagini seguenti (figure 1.38 e 1.39) si può osservare l’albero generato dalla frequenza di ricorsività delle lettere costituenti un noto scioglilingua e il risultato della compressione Huffman ottenuta. Figura 1.38 L’albero delle associazioni relativo al testo di uno scioglilingua La struttura dell’albero mostra che le lettere d e l sono le meno frequenti di tutte. 46 Hardware e software Figura 1.39 L’albero delle associazioni relativo al testo di uno scioglilingua La compressione ottenuta ha permesso un risparmio di spazio pari a quasi il 60%. L’algoritmo LZW (Lempel-Ziv-Welch) L’algoritmo non distruttivo che va sotto il nome di LZW è il risultato delle modifiche apportate nel 1984 da Terry Welch ai due algoritmi sviluppati nel 1977 e nel 1978 da Jacob Ziv e Abraham Lempel, e chiamati rispettivamente LZ77 e LZ78. Il funzionamento di questo metodo è molto semplice: viene creato un dizionario delle stringhe di simboli ricorrenti nel file, costruito in modo tale che a ogni nuovo termine aggiunto al dizionario sia accoppiata in modo esclusivo un’unica stringa. Esiste un dizionario di partenza costituito dai 256 simboli del codice ASCII, che viene incrementato con l’aggiunta di tutte le stringhe ricorrenti nel file, che siano maggiori di un carattere. Ciò che viene memorizzato nel file compresso è un codice breve che rappresenta in modo inequivocabile la stringa inserita nel dizionario così creato. Esiste, naturalmente, un insieme di regole non ambigue per la codifica del dizionario, che permetterà in seguito al sistema di decompressione di generare un dizionario esattamente uguale a quello di partenza, in modo tale da poter effettuare l’operazione inversa a quella di compressione, consistente nella sostituzione del codice compresso con la stringa originale. La reversibilità completa e precisa dell’operazione è indispensabile al fine di riottenere l’esatto contenuto del file originale. Il risparmio di spazio in un file compresso con LZW dipende dal fatto che il numero di bit necessari a codificare il “termine” che rappresenta una stringa nel dizionario è inferiore al numero di bit necessari a scrivere nel file non compresso tutti i caratteri che compongono la stringa. Quanto più numerose e lunghe sono le stringhe che è possibile inserire nel dizionario, tanto maggiore sarà il coefficiente di compressione del file. I formati grafici più noti che utilizzano l’algoritmo LZW sono il TIFF e il GIF. Esso è utilizzato anche dallo standard V.42bis, implementato su tutti i modem di ultima generazione come uno dei protocolli per la trasmissione di dati compressi. 47 C A P I TO L O 01 Drastiche riduzioni di peso con lo standard JPEG Il JPEG (figura 1.40) è uno standard industriale e non va confuso con il formato di file JPG, che rappresenta di volta in volta, a seconda della software house che lo implementa, un sottoinsieme variabile e non sempre universalmente compatibile dello standard di riferimento. Pochi per esempio sanno che le specifiche JPEG descrivono anche un formato di compressione non distruttivo, basato su tecniche differenti da quelle che descriveremo qui di seguito, del quale si è ormai persa traccia, non usando gli sviluppatori di programmi di grafica – a causa delle sue non straordinarie prestazioni – inserirlo tra le varie opzioni di salvataggio dei normali file JPG. Figura 1.40 Schematizzazione semplificata del processo di compressione JPEG Ecco in dettaglio la sequenza di operazioni che da un’immagine originale non compressa porta a un’immagine compressa con JPEG. 1. Trasformazione dello spazio colore – A causa delle particolari caratteristiche dell’occhio umano, molto più sensibile alle variazioni di luminosità che alle variazioni cromatiche, è opportuno innanzitutto trasformare la modalità RGB in modalità YUV. È questo lo spazio-colore definito per il sistema televisivo PAL. Tra i suoi equivalenti nel campo della computer-grafica c’è il metodo L*a*b presente in Adobe Photoshop. Il sistema YUV scompone l’informazione relativa a ciascun pixel in due componenti: la luminanza, che definisce il grado di luminosità nella scala da nero a bianco (la lettera Y della sigla YUV), e la crominanza, che definisce il colore in base al rapporto tra due assi, uno che va da blu a giallo (la lettera U) e l’altro che va da rosso a verde (la lettera V). Eseguire la trasformazione dallo spazio-colore RGB allo spazio-colore YUV non è indispensabile, ma il farlo consente di ottenere una maggiore compressione JPEG. Quando, infatti, le successive trasformazioni matematiche che si applicano all’immagine trovano l’informazione nettamente suddivisa nelle due componenti di luminosità e di colore, possono procedere all’eliminazione di molte informazioni relative al colore senza intaccare quelle relative alla luminosità, più importanti per la visione umana, e senza causare, in tal modo, danni visibili al contenuto dell’immagine. Ciò non è possibile invece nella stessa misura quando gli algoritmi di compressione si applicano a valori RGB, che presentano l’informazione relativa 48 Hardware e software al colore e quella relativa alla luminosità fuse insieme (per le immagini in scala di grigio la conversione non ha senso, in quanto l’informazione sulla luminosità è già disponibile in partenza). 2. Riduzione, in base alla componente, di gruppi di pixel a valori medi – È un’operazione opzionale, di cui alcuni software di grafica consentono l’impostazione. La componente che esprime la luminanza è lasciata invariata, mentre la componente cromatica viene dimezzata in orizzontale e in verticale, oppure soltanto in orizzontale. Ciò si esprime con il rapporto 2:1 per indicare il dimezzamento e con il rapporto 1:1 per indicare che la componente è lasciata invariata. Alcuni programmi di grafica, tra le opzioni di salvataggio in JPG, mostrano stringhe esoteriche come 4-1-1 e 4-2-2, che esprimono appunto il coefficiente di riduzione che viene applicato alle componenti cromatiche dell’immagine. Tale operazione, che fa parte degli algoritmi distruttivi dello standard JPEG, riduce in partenza il file di una metà o di un terzo della sua grandezza originale. Non si applica alle immagini a toni di grigio e ciò spiega perché queste siano meno comprimibili in generale delle immagini a colori. 3. DCT applicata a blocchi di 8×8 pixel suddivisi in base alla componente – La sigla DCT sta per Discrete Cosine Transform: si tratta di una serie di operazioni matematiche che trasformano i valori di luminosità e colore di ciascuno dei 64 pixel di ogni blocco preso in esame in altrettanti valori di frequenza. In particolare, mentre i valori dei pixel contenuti nei blocchi di 8×8 tratti dall’immagine originale variano da 0 a 255, dopo l’esecuzione della DCT essi, trasformati in frequenze, variano da –721 a 721. Dov’è allora il guadagno? In una sottile combinazione di quantizzazione e codifica entropica. In termini più semplici, la trasformazione dei valori in frequenze consentirà nei passaggi successivi di tagliare più informazioni senza apparente perdita visiva di quante se ne potrebbero tagliare lavorando sui valori naturali dei pixel. Inoltre la sequenza a zig zag in cui i nuovi valori vengono scritti consente di applicare a essi una compressione (Huffman o aritmetica) più efficace (figura 1.41). Figura 1.41 Schemi tratti dalle specifiche ufficiali JPEG ITU.T81. Scrittura a zig zag dei valori ottenuti con la DCT, a partire dall’angolo superiore sinistro del blocco di 8×8 pixel 49 C A P I TO L O 01 4. Divisione e arrotondamento all’intero dei 64 valori ottenuti con la DCT – Ciascuno dei 64 valori di frequenza viene diviso per uno specifico coefficiente di quantizzazione, codificato in apposite tavole di riferimento. Il risultato della divisione viene arrotondato all’intero più vicino. L’eliminazione dei decimali è la principale operazione di compressione distruttiva dello standard JPEG. Il tutto è studiato in modo che le frequenze più importanti per l’occhio umano, cioè le più basse, memorizzate nell’angolo superiore sinistro del blocco di 8×8, siano preservate, mentre le più alte, la cui perdita è relativamente ininfluente, vengano eliminate. 5. Compressione non distruttiva dei coefficienti quantizzati – Ai valori risultanti dalla divisione e dall’arrotondamento sopra descritti, viene applicata una compressione non distruttiva, per la quale può essere utilizzato l’algoritmo Huffman o una codifica aritmetica chiamata Q-coding. Questa ultima è di circa il 5-10% più efficace della Huffman, ma è protetta da brevetto, per cui il suo uso non è gratuito. Per tale motivo i software che realizzano la compressione JPG implementano solo l’algoritmo Huffman. 6. Inserimento nel file compresso di intestazioni e parametri per la decompressione – Affinché il file possa essere in seguito decompresso e possa generare un’immagine il più possibile somigliante all’originale non compresso, occorre che nel file JPG siano inserite le tabelle contenenti i coefficienti di quantizzazione e i valori di trasformazione della codifica Huffman. Due precisazioni in conclusione di paragrafo. La prima riguarda il noto fenomeno dei blocchi quadrettati, che sono spesso chiaramente visibili nelle immagini JPG molto compresse e rappresentano un forte elemento di degrado della qualità. Essi sono la conseguenza diretta dell’algoritmo che suddivide l’immagine di partenza in blocchi da 8×8 pixel. Le varie trasformazioni applicate ai valori dei pixel di ciascun blocco sono del tutto indipendenti dalle trasformazioni applicate ai pixel dei blocchi adiacenti. Ciò causa talvolta transizioni brusche tra pixel adiacenti appartenenti a blocchi differenti. Il fenomeno è tanto più appariscente quanto più l’immagine contiene aree di colore uniforme e linee sottili ben separate dallo sfondo (figura 1.42). Figura 1.42 A destra un particolare molto ingrandito della foto di sinistra, che mostra in modo inequivocabile la quadrettatura tipica risultante dalla compressione JPEG 50 Hardware e software La seconda precisazione riguarda il significato dell’espressione codifica entropica, utilizzata al precedente punto 3). Questa locuzione traduce l’inglese entropy coding (o encoding) ed esprime un tipo di compressione non distruttiva – quale per esempio l’algoritmo Huffman – che, data una serie qualsiasi di simboli, è in grado di codificarli utilizzando il minor numero possibile di bit. JPEG 2000, l’evoluzione della specie... Il successo dello standard di compressione JPEG si può desumere dalle cifre: è stato calcolato infatti che l’80% circa delle immagini presenti su Internet siano file JPG. Tuttavia esiste già il successore designato di questo fortunato standard: si tratta di un algoritmo che va sotto il nome di JPEG 2000. Ma come funziona precisamente JPEG 2000? Quali sono le principali differenze rispetto al fratello maggiore JPEG? Le differenze sono numerose e la principale è senz’altro il cambiamento dello strumento matematico alla base dell’algoritmo di compressione. Mentre, infatti, JPEG usa la DCT (Discrete Cosine Transform, vedi sopra), JPEG 2000 usa la cosiddetta DWT (Discrete Wavelet Transform). La parola wavelet (piccola onda, in italiano) identifica un sistema matematico che consente di superare il difetto principale delle immagini trattate secondo il normale standard JPEG, cioè la presenza di quei blocchi quadrettati che sono il prezzo da pagare per la maggior compressione ottenuta. Con l’uso della DWT, il contenuto del file originale non viene più suddiviso in blocchi da 8×8 pixel, ma è l’immagine nella sua totalità a essere analizzata e successivamente scomposta, per ottenere alla fine un file compresso dove l’eventuale degrado dell’immagine è significativamente inferiore a quello ottenibile, a parità di compressione, con il JPEG tradizionale: un degrado che si manifesta non più attraverso i famosi blocchi quadrettati, ma con un aspetto più o meno sfocato dei contorni degli oggetti presenti nell’immagine. Ma vediamo in dettaglio quali sono le fasi della compressione eseguita con l’algoritmo JPEG 2000. 1. Preparazione dell’immagine. La trasformazione wavelet agisce decorrelando i contenuti a bassa frequenza – più importanti per la visione umana – dai contenuti ad alta frequenza. Per far ciò è necessario che l’immagine originale sia suddivisa in quattro immagini più piccole, dotate ciascuna di un numero di colonne e di righe uguale a esattamente la metà del file iniziale. La preparazione consiste dunque nel fornire alla DWT una griglia di righe e colonne tale da consentire la ripetizione dell’operazione di suddivisione in quattro a ogni successivo stadio del ciclo di trasformazione operato con la DWT. 2. Trasformazione. L’immagine viene trasformata dalla DWT e poi scalata, in modo da ottenere quattro immagini alte e larghe ciascuna esattamente la metà dell’originale. Nel quadrante superiore sinistro, grazie all’uso di un filtro passa-basso, sono 51 C A P I TO L O 01 salvate le basse frequenze presenti nel file di partenza. Negli altri tre quadranti, grazie all’uso di un filtro passa-alto, sono salvate le alte frequenze. Il risultato di quest’operazione è la decorrelazione tra le informazioni di bassa e alta frequenza contenute nell’immagine. Il passaggio successivo consiste nella ripetizione del medesimo procedimento, applicato stavolta solo all’immagine del quadrante superiore sinistro, contenente le basse frequenze. Il risultato del secondo passaggio è rappresentato nella figura sottostante (figura 1.43): l’immagine con le basse frequenze ha ormai altezza e larghezza pari a un quarto dell’originale, mentre tutto il resto è occupato dalle alte frequenze. Il procedimento poi continua per analisi e scalature successive, fino al limite minimo di un’immagine ridotta a un solo pixel. Il risultato finale di tutta l’operazione è che l’intero contenuto informativo dell’immagine originale è stato segmentato in una serie di trasformazioni successive, che potranno poi essere compresse in un minimo spazio e utilizzate in modo reversibile in fase di decompressione, per generare un’immagine il più possibile simile all’originale non compresso. Figura 1.43 Applicazione progressiva della DWT su un’immagine compressa con JPEG 2000 3. Quantizzazione e codifica. La quantizzazione è un’operazione in genere “distruttiva” (lossy), che divide per specifici coefficienti i valori trovati dalla DWT e arrotonda poi i risultati all’intero più vicino. Le fasi di quantizzazione e di codifica hanno lo scopo di selezionare per cicli successivi i dati da comprimere e disporli poi in un ordine preciso all’interno del flusso dei dati. Possono essere implementate come stadi separati, così come avviene nel JPEG standard, con la fase di quantizzazione che elimina la parte meno rilevante dell’informazione e passa il resto all’encoder per la fase di codifica. Ma combinando quantizzazione e codifica in un singolo stadio si ottiene la possibilità di controllare esattamente l’entità della compressione (qualità dell’immagine contro coefficiente di compressione). La dimensione del flusso di dati compresso può essere predefinita con esattezza. In questo caso la quantizzazione dei coefficienti trasformati ha luogo durante la fase di codifica. 52 Hardware e software Il primo ciclo di quantizzazione ha per così dire una “grana grossa”, nel senso che solo i coefficienti maggiori sono presi in considerazione e codificati. Al ciclo successivo gli intervalli di quantizzazione vengono dimezzati, sicché divengono significativi coefficienti più piccoli. Ciò significa che i valori dei coefficienti selezionati nel primo ciclo sono specificati in modo sempre più preciso dalle informazioni aggiunte a ogni successivo ciclo di quantizzazione e codifica. I cicli continuano finché il flusso dei dati non ha raggiunto la sua lunghezza predefinita oppure finché tutta l’informazione presente nell’immagine non viene codificata. Questo modo di incorporare nella sequenza finale di dati strutture man mano più raffinate consente di ricostruire l’immagine iniziale a partire da qualsiasi blocco di dati contenuto nel file compresso, con la limitazione che la qualità dell’immagine ricostruita sarà tanto migliore quanto minore sarà la parte di dati non utilizzata dell’intero flusso. Una simile caratteristica è importantissima per i futuri usi di questo formato su Internet. I file compressi con JPEG 2000 racchiudono infatti al loro interno più risoluzioni differenti della stessa immagine. I produttori di software potranno implementare perciò dei comandi in grado di consentire all’utente collegato via Internet di decidere, in base al tempo stimato per il download, quale risoluzione dell’immagine visualizzare nel proprio browser. I file JP2 (è questa l’estensione proposta per identificare lo standard JPEG 2000) consentiranno insomma di racchiudere in un unico documento l’anteprima – il cosiddetto thumbnail – la bassa, la media e l’alta risoluzione di una stessa immagine, senza però moltiplicare proporzionalmente il peso del file. Ecco per concludere un elenco delle principali, innovative caratteristiche previste dalle specifiche JPEG 2000: • supporto per differenti modalità e spazi-colore (immagini a due toni, in scala di grigi, a 256 colori, a milioni di colori, in standard RGB, PhotoYCC, CIELAB, CMYK); • supporto per differenti schemi di compressione, adattabili in base alle esigenze; • standard aperto a successive implementazioni legate al sorgere di nuove necessità; • supporto per l’inclusione di un’illimitata quantità di metadati nello spazio di intestazione del file, utilizzabili per fornire informazioni private o per interagire con applicazioni software (guidare, per esempio, il browser allo scaricamento di appositi plug-in da Internet); • stato dell’arte per la compressione distruttiva e non distruttiva delle immagini, con un risparmio di spazio a parità di qualità, rispetto allo standard JPEG, dell’ordine del 20-30%; • supporto per immagini più grandi di 64×64 k pixel, ovvero maggiori di 4 GB; • singola architettura per la decompressione dei file, in luogo dei 44 modi codificati per il vecchio JPEG, molti dei quali legati a specifiche applicazioni e non utilizzati dalla maggior parte dei decompressori; • supporto per la trasmissione dei dati in ambienti disturbati, per esempio attraverso la radiotelefonia mobile; 53 C A P I TO L O 01 • capacità di maneggiare indifferentemente sia le immagini naturali sia la grafica generata al computer; • supporto per la codifica di ROI (Region Of Interest), cioè di zone ritenute più importanti e perciò salvate con una risoluzione maggiore di quella usata per il resto dell’immagine. 54